1、镜像加速拉取MySQL镜像
http://www.docker-cn.com/registry-mirror
a)docker search mysql 检索MySQL
b)mysql:5.6.41 冒号后面为版本号,对应https://hub.docker.com/中的tag
[root@localhost docker]# docker pull registry.docker-cn.com/library/mysql:5.6.41
5.6.41: Pulling from library/mysql
802b00ed6f79: Pull complete
30f19a05b898: Pull complete
3e43303be5e9: Pull complete
94b281824ae2: Pull complete
51eb397095b1: Pull complete
3f6fe5e46bae: Pull complete
b5a334ca6427: Pull complete
115764d35d7a: Pull complete
719bba2efabc: Pull complete
284e66788ee1: Pull complete
0f085ade122c: Pull complete
Digest: sha256:4c44f46efaff3ebe7cdc7b35a616c77aa003dc5de4b26c80d0ccae1f9db4a372
Status: Downloaded newer image for registry.docker-cn.com/library/mysql:5.6.41
2、查看MySQL镜像
a)docker images 查看所有本地镜像
b)docker rmi image-id 删除指定的本地镜像
[root@localhost src]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
registry.docker-cn.com/library/mysql 5.6.41 1f47fade220d 4 weeks ago 256MB
3、创建MySQL配置文件夹
[root@localhost /]# cd /usr/local/src/
[root@localhost src]# mkdir -p config/mysql/springboot
[root@localhost src]# cd config/mysql/springboot
[root@localhost springboot]# pwd
/usr/local/src/config/mysql/springboot
4、启动MySQL
a)-p
docker指令:docker run -p ip:hostPort:containerPort mysql
使用-p参数会分配宿主机的端口映射到虚拟机。
IP表示主机的IP地址。
hostPort表示宿主机的端口。
containerPort表示虚拟机的端口。
支持的格式有三种:
ip:hostPort:containerPort:映射指定地址的指定端口到虚拟机的指定端口(不常用)
如:127.0.0.1:3306:3306,映射本机的3306端口到虚拟机的3306端口。
ip::containerPort:映射指定地址的任意端口到虚拟机的指定端口。(不常用)
如:127.0.0.1::3306,映射本机的3306端口到虚拟机的3306端口。
hostPort:containerPort:映射本机的指定端口到虚拟机的指定端口。(常用)
如:3306:3306,映射本机的3306端口到虚拟机的3306端口。
b)--name
容器名称
c)-v
改mysql的配置文件就只需要把mysql配置文件放在自定义的文件夹下(/usr/local/src/config/mysql/springboot)
d)-e
MYSQL_ROOT_PASSWORD:root密码
MYSQL_ALLOW_EMPTY_PASSWORD :空密码
MYSQL_RANDOM_ROOT_PASSWORD:设置为yes以生成根用户的随机初始密码(使用pwgen)
这个三个参数必须指定一个
更多MySQL参数详见下方参考网站①
e)-d
后台运行
f)registry.docker-cn.com/library/mysql:5.6.41
docker images 中的 REPOSITORY:TAG (注意:如果REPOSITORY的不在镜像中,它会重新拉取一个镜像并启动!)
[root@localhost springboot]# docker run -p 3306:3306 --name springboot -v /usr/local/src/config/mysql/springboot:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -d registry.docker-cn.com/library/mysql:5.6.41
04d5e345c3d760cc1b4e08568540824a8852d01de278ac2c797522015f2161a6
附录:
a)解决删除镜像时image is referenced in multiple repositories
用repository和tag的方式来删除
详见参考网站②
docker rmi registry.docker-cn.com/library/mysql:5.6.41