逸学Docker【java工程师基础】2.Docker镜像容器基本操作+安装MySQL镜像运行

news/2024/6/3 18:19:26 标签: docker, java, 容器

基础的镜像操作

在这里我们的应用程序比如redis需要构建成镜像,它作为一个Docker文件就可以进行构建,构建完以后他是在本地的,我们可以推送到镜像服务器,逆向可以拉取到上传的镜像,或者说我们可以保存为压缩包进行相互传递

在本地的镜像可以传来传去,本身也可以查看和删除

查看镜像

docker  images

删除镜像

 docker rmi

当然查看帮助文档,可以查看docker的所有命令了

 docker --help

比如想看某个命令的作用,也可以这样查看

docker images --help

运行镜像

在这里我们安装mysql作为镜像并且讲解

1.我们先从镜像服务器拉取到MySQL

docker pull mysql:5.7

2.查看镜像

docker images

3.创建两个文件夹用来挂载

补充:-p代表可以嵌套创建多级文件夹

在这里创建挂载是因为镜像是一个整体,删了就没有了,我们可以从外部对应一个文件夹来映射,删了镜像,但是文件还在服务器上

mkdir -p /home/service/mysql/data

mkdir -p /home/service/mysql/conf

4.切换到/home/service/mysql/conf目录

cd /home/service/mysql/conf

5.创建my.cnf文件

补充:如果当前目录下没有名为 "my.cnf" 的文件,touch my.cnf 命令将创建一个新的空文件。如果该文件已经存在,touch 命令将更新文件的访问和修改时间戳,但不会改变文件的内容。

touch my.cnf

 "my.cnf" 通常是一个配置文件,用于存储 MySQL 服务器的配置信息。你可以使用文本编辑器(如 vim 或 nano)来编辑这个文件,以设置各种服务器参数。

6.编辑mysql配置信息

vim my.cnf

并且将下面内容粘入

[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
default-time_zone = '+8:00'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

补充:

(如果没有vim就 yum install vim)

7.创建并且运行一个容器

docker run

-d mysql:5.7

--name mysql

-p 3306:3306

-v /home/service/mysql/logs:/logs

-v /home/service/mysql/data:/mysql_data

-e MYSQL_ROOT_PASSWORD=123456

docker run:创建并运行一个容器,可以加-d让容器在后台运行
--name mysql:给容器起个名字,必须唯一 

-p 3306:3306 设置端口映射  第一个是服务器端口,第二个是容器端口

-v 用服务器的实体文件挂载到数据卷,数据卷对应的容器目录

数据卷(volume)是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。

用真实控制虚拟,虚拟控制容器

-e 设置环境变量  配置MySQL数据库的root用户的密码为123456

8.进入容器并且交互

docker exec -it mysql bash

9.输入密码登录

mysql -uroot -p

补充:密码不显示

10.mysql->

CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'admin'@'%'; 
flush privileges; 

11.退出退出   查看启动状态

exit

exit

docker ps

快捷安装

docker pull mysql:5.7 

docker images 

mkdir -p /home/service/mysql/data 
mkdir -p /home/service/mysql/con

cd /home/service/mysql/conf

touch my.cnf 

vim my.cnf

-----------------------------
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
default-time_zone = '+8:00'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
-----------------------------------------

docker run -p 3306:3306 --name mysql -v /home/service/mysql/logs:/logs -v /home/service/mysql/data:/mysql_data -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7


docker exec -it mysql bash 

mysql -uroot -p 

123456

--------------------------------------

REATE USER 'admin'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'admin'@'%'; 
flush privileges; 

------------------------------

docker ps

容器的命令

镜像到容器这一步,我们的操作就在重点就在容器的命令了

常用的

查看容器

docker ps 

可以加参数-a :显示所有的容器,包括未运行的

强制删除运行中的容器命令

docker rm -f  容器


http://www.niftyadmin.cn/n/5324347.html

相关文章

英飞凌TC3xx之一起认识GTM(十三)详细说说GTM子模块ATOM(通道模式及应用举例: SOMC)

英飞凌TC3xx之一起认识GTM(十三)详细说说GTM子模块ATOM(通道模式及应用举例: SOMC) 1 信号比较输出模式 (SOMC)1.1 CPU控制下的SOMC模式1.2 ARU控制下的SOMC模式1.3 应用举例2 总结如上文所述,ATOM的每个通道都可以以下面这五个模式中的任意一个模式下独立运行: - ATOM 信…

React Hooks useContext 传参数

1、封装 context.js 文件,如下图: import { createContext } from "react";const Context createContext(null);export default Context;2、父级组件引入 context.js 文件,并用Provider包裹子组件,值通过 value 传递&…

一、MOJO环境部署和安装

以Ubuntu系统为例。 安装mojo-CLI curl https://get.modular.com | MODULAR_AUTHmut_fe303dc5ca504bc4867a1db20d897fd8 sh - 安装mojo SDK modular auth mojo modular auth install mojo 查看mojo版本号 mojo --version 输入mojo指令,进入交互编程窗口

vscode(visual studio code) 免密登陆服务器

1.生成密钥 首先,在本地,打开命令输入框: WinR–>弹出输入框,输入cmd,打开命令框。 然后,在命令框,输入 ssh-keygen -t rsa -C "love"按两次回车键,问你是否重写,选择…

第 12 章 多路查找树

文章目录 12.1 二叉树与B 树12.1.1 二叉树的问题分析12.1.2 多叉树12.1.3 B 树的基本介绍 12.2 2-3 树12.2.1 2-3 树是最简单的 B 树结构, 具有如下特点:12.2.2 2-3 树应用案例12.2.3 其它说明 12.3 B 树、B树和 B*树12.3.1 B 树的介绍12.3.2 B 树的介绍12.3.3 B树的介绍12.3.4…

C++中类重载输出符

C中类重载输出符&#xff0c;请看示例代码&#xff0c; #include <iostream>using namespace std;class Student { public:Student(string name, int grade, int cclass, int age) : _name(name), _grade(grade), _class(cclass), _age(age) {}friend ostream& ope…

js 数组内置的方法

JavaScript中数组内置了许多有用的方法&#xff0c;可以方便地操作和处理数组。以下是一些常用的数组方法&#xff1a; push()&#xff1a;向数组末尾添加一个或多个元素&#xff0c;并返回新数组的长度。pop()&#xff1a;移除数组末尾的元素&#xff0c;并返回被移除的元素。…

spring基于XML方式的组件管理

基本介绍 依赖注入是一种处理对象间依赖关系的技术。在Spring中&#xff0c;依赖注入有构造方法注入和设值注入两种方式。 设值注入是将依赖作为成员变量&#xff0c;通过主调类的setter方法注入依赖。构造方法注入则是在Bean的构造方法中注入依赖。 本次我们将通过具体例子来…