1、拉取mysql8镜像
docker pull mysql:8.0.20
2、创建docker专用网络
这里是为了后面固定各个容器的IP地址,避免IP地址发生变动带来的其他问题
docker network create --subnet=172.72.0.0/24 mysql-network
3、创建存储数据相关目录
mkdir -p /usr/local/mysql/lhrmgr15/conf.d
mkdir -p /usr/local/mysql/lhrmgr15/data
mkdir -p /usr/local/mysql/lhrmgr16/conf.d
mkdir -p /usr/local/mysql/lhrmgr16/data
mkdir -p /usr/local/mysql/lhrmgr17/conf.d
mkdir -p /usr/local/mysql/lhrmgr17/data
4、启动3个mysql容器
依次执行下面的docker命令即可,目录名称和容器的名称可以结合自身的情况更改
第一个容器:
docker run -d --name mysql8020mgr33065 \
-h lhrmgr15 -p 33065:3306 --net=mysql-network --ip 172.72.0.15 \
-v /usr/local/mysql/lhrmgr15/conf.d:/etc/mysql/conf.d -v /usr/local/mysql/lhrmgr15/data:/var/lib/mysql/ \
-e MYSQL_ROOT_PASSWORD=lhr \
-e TZ=Asia/Shanghai \
mysql:8.0.20
第二个容器:
docker run -d --name mysql8020mgr33066 \
-h lhrmgr16 -p 33066:3306 --net=mysql-network --ip 172.72.0.16 \
-v /usr/local/mysql/lhrmgr16/conf.d:/etc/mysql/conf.d -v /usr/local/mysql/lhrmgr16/data:/var/lib/mysql/ \
-e MYSQL_ROOT_PASSWORD=lhr \
-e TZ=Asia/Shanghai \
mysql:8.0.20
第三个容器:
docker run -d --name mysql8020mgr33067 \
-h lhrmgr17 -p 33067:3306 --net=mysql-network --ip 172.72.0.17 \
-v /usr/local/mysql/lhrmgr17/conf.d:/etc/mysql/conf.d -v /usr/local/mysql/lhrmgr17/data:/var/lib/mysql/ \
-e MYSQL_ROOT_PASSWORD=lhr \
-e TZ