docker建多个mysql_《容器化系列二》利用Docker容器化技术安装多个mysql

前提说明

安装的Linux系统版本为Centos7.x

一、安装docker并测试

1、安装yum相关工具包

///安装yum相关工具包

yum install -y yum-utils device-mapper-persistent-data lvm2

3a3492684a6df6d0126a2a41921b1ead.png

//发些报错,关闭刚刚睡眠中的进程

kill -9 13312

//再次执行

yum install -y yum-utils device-mapper-persistent-data lvm2

1653c535391bb725c8591e4a12f37b54.png

2、添加docker的下载源

建议用下面的阿里源

//添加阿里的安装源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

915f629c7fc4744aef07aec471c620db.png

//进入yum的仓库配置目录进行查看

[root@Linux-docker1 ~]# cd /etc/yum.repos.d/[root@Linux-docker1 yum.repos.d]# ls

94ac03aed1592dafa086f936dbe3d56d.png

//元数据缓存的建立

yum makecache fast

dbfb22b7f1467fac5de0f739f908830b.png

3、安装docker

//注:安装的是docker社区版本

yum -y install docker-ce

2792286fb72fe6db3f4c1b46b8bc1085.png

//安装完我们验证一下

[root@Linux-docker1 yum.repos.d]# rpm -qa |grep docker

d7be40fd1279b7a951c7c0710680fcc1.png

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

63c099cae5397a747d95619f424ec135.png

6、测试验证docker是否启动

//从仓库下载hello-world镜像

docker pull hello-world

4d9c6cc18963a47063c7527a8bd62e55.png

//查看本地镜像

[root@Linux-docker1 yum.repos.d]# docker images

8a1b0c4578b859eb24ba199d956e4632.png

//启动镜像

[root@Linux-docker1 yum.repos.d]# docker run hello-world

2a5ac5e48733fc9862444f3d11b2465d.png

二、下载镜像并启动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

d200c476722ac53b6bd817856c5960b8.png

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

bcaa8ebf7c51d02c947b3049bc369ed2.png

②发现报错

8d3085c0df8f62b2d5d850d617e6bc21.png

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设置的密码

9a9f836d7b12249450ce57c23f6e5fa6.png

测试连接成功

cbcf74e6358ea74bf6375ebe6e7fdd55.png

到此,我们的一个数据库安装成功

三、安装第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

后续步骤应该不用多说了吧

ffbe4a26430e750d7fc8055af03b5cbd.png

3bbbb4154d7a6a7193161d61ed08c3fc.png

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值