Docker 打包MySQL (带数据源打包) 并加载打包后镜像运行
前言
mysql镜像的数据默认都在/var/lib/mysql目录下,我们修改默认的数据库的数据位置就行,不要放在/var/lib/mysql下面。
操作
1. 创建mysql源数据备份目录
mkdir /mysqldata/
2. 复制mysql源数据到备份目录
cp -r /var/lib/mysql/ /mysqldata/
3. 修改mysql.cnf
# mysql镜像版本不同,目录和文件名可能也不同 下面是mysql:8.0.17
vim /etc/mysql/my.cnf
# 修改vim datadir的值为备份目录路径
datadir=/mysqldata/mysql
4. 重启容器
# 先退出容器
exit
# 重启容器
docker restart 容器id
5. 提交镜像
docker commit -a "zxa" -m "init data" 容器id 镜像名称:镜像标签
6. 保存镜像到本地
docker save -o 保存名称.tar 镜像名称:镜像标签
7. 加载镜像到docker
docker load -i 保存名称.tar
8. 启动容器
docker run -d --name mysql-v1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 镜像名称:镜像标签