怎么通过docker部署mysql.网上教程太多了,多了,了…特意研究了下是否能创建两个容器部署mysql不同的版本呢.
过程
1.创建部署mysql5.7
sudo docker run -d --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 -v /opt/mysql_data_5.7:/var/lib/mysql -v /opt/mysql_conf_5.7:/etc/mysql/conf.d -p 3307:3306 mysql:5.7
2. 创建部署mysql8.1
sudo docker run -d --name mysql8.1 -e MYSQL_ROOT_PASSWORD=123456 -v /opt/mysql_data_8.1:/var/lib/mysql -v /opt/mysql_conf_8.1:/etc/mysql/conf.d -p 3306:3306 mysql:8.1
参数说明:
-p 3307:3306: 这个选项将容器的3306端口映射到主机的3307端口。这样,你可以通过主机的3307端口访问MySQL容器
-v /opt/mysql_data:/var/lib/mysql: 这个选项指定了一个数据卷的映射。将主机的/opt/mysql_data目录映射到容器的/var/lib/mysql目录,这样MySQL的数据文件将会存储在主机上,以便持久化保存。
-v /opt/mysql_conf:/etc/mysql/conf.d: 这个选项指定了另一个数据卷的映射。将主机的/opt/mysql_conf目录映射到容器的/etc/mysql/conf.d目录,这样你可以在主机上配置MySQL的配置文件。
问题点
1.映射数据文件和配置文件 参数若两个版本设置同路径.则第二个容器启动不成功.
2. 映射到主机的端口也要填成不一致.