前提说明
安装的Linux系统版本为Centos7.x
一、安装docker并测试
1、安装yum相关工具包
///安装yum相关工具包
yum install -y yum-utils device-mapper-persistent-data lvm2
//发些报错,关闭刚刚睡眠中的进程
kill -9 13312
//再次执行
yum install -y yum-utils device-mapper-persistent-data lvm2
2、添加docker的下载源
建议用下面的阿里源
//添加阿里的安装源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
//进入yum的仓库配置目录进行查看
[root@Linux-docker1 ~]# cd /etc/yum.repos.d/[root@Linux-docker1 yum.repos.d]# ls
//元数据缓存的建立
yum makecache fast
3、安装docker
//注:安装的是docker社区版本
yum -y install docker-ce
//安装完我们验证一下
[root@Linux-docker1 yum.repos.d]# rpm -qa |grep docker
4、更改镜像源为国内阿里云节点,并指定docker数据存储目录
mkdir -p /data/docker
mkdir-p /etc/docker
vim/etc/docker/daemon.json//注:docker安装好后默认没有此文件,需要手动创建,添加阿里云镜像节点,并指定docker存储目录//按i键进入编辑,按Esc键退出编辑模式,按:wq进行保存
{"registry-mirrors": ["https://ehdjgsyp.mirror.aliyuncs.com"],"graph": "/data/docker"}
5、启动docker,并加入开机启动
//启动docker
systemctl start docker//加入开机自启
systemctl enable docker
6、测试验证docker是否启动
//从仓库下载hello-world镜像
docker pull hello-world
//查看本地镜像
[root@Linux-docker1 yum.repos.d]# docker images
//启动镜像
[root@Linux-docker1 yum.repos.d]# docker run hello-world
二、下载镜像并启动mysql容器
1、下载mysql镜像
//下载mysql镜像
docker pull mysql
--如果下载失败,请多试几次,如果实在没速度,就需要去看上面添加的阿里镜像源是否有填写正确
2、启动mysql容器
//启动mysql容器
docker run --name docker-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3333:3306 -d mysql
##参数说明
-name容器的别称。
-p端口映射。格式是主机的端口:容器的端口。
-e设置容器的环境变量。-e MYSQL_ROOT_PASSWORD= 123456就代表mysq的root的密码是123456
-d使用镜像包名称,可以通过docker images查看
3、验证查看容器状态
--查看容器状态
docker ps -a
4、直接进mysql的容器中的bash
//docker exec -it 容器名 /bin/bash
docker exec-it docker-mysql /bin/bash
//进去以后
mysql -uroot -p
//密码是刚刚设置的123456
5、用本地的Navicate进行连接
①确认环境
首先安装docker的那台Linux宿主机的ip为 192.168.59.132
对应的mysql端口为3333
msyql账号root
mysql密码123456
②发现报错
2059-Authentication plugin 'caching.sha2_password' cannot be loaded:..@..gv頗
③解决问题
需要利用上面第4步在docker的mysql容器中执行这条sql语句
alter user 'root'@'%' identified with mysql_native_password by '123456';
上面123456需要改成你自己mysql设置的密码
测试连接成功
到此,我们的一个数据库安装成功
三、安装第2个mysql数据库
1、启动mysql容器,更改端口和容器名称即可
//启动mysql容器,更改端口3333改成3334,防止端口冲突,还需要更改容器名称把之前的docker-mysql随便改成不同的即可,这里改成了docker-mysql-2
docker run --name docker-mysql-2 -e MYSQL_ROOT_PASSWORD=123456 -p 3334:3306 -d mysql
这样新的mysql容器又起来了
2、用Navicate进行连接
首先安装docker的那台Linux宿主机的ip为 192.168.59.132
对应的mysql端口为3334(上面那个是3333)
msyql账号root
mysql密码123456
后续步骤应该不用多说了吧
3、以此类推可以安装其他的mysql,只需要映射的端口号和容器名不同即可
四、其他说明
1、doker关闭容器
//docker stop +容器名或者+容器的id
docker stop $CONTAINER_ID
2、容器的id在哪找
//直接docker ps -a 一下
docker ps -a
3、手动关闭后的容器怎么启动
//直接start一下即可+容器名或者+容器id
docker start docker-mysql
4、怎样关闭docker的服务
//直接用系统服务进行关闭,关闭以后,里面的容器也会相应关闭!所以请先关停里面的容器,再关闭docker服务!
systemctl stop docker
5、启动docker的服务
//直接利用系统服务去启动
systemctl start docker
2020.07.23