Docker 运行MySQL

Docker 运行MySQL


# 1. 启动 docker
systemctl start docker

# 2. 拉取镜像
docker pull mysql:8.0.20

# 3. 查看镜像是否拉取成功
docker images

# 4. 启动容器,拷贝容器内配置文件
# 启动容器
docker run -P --rm --name mysql -e MYSQL_ROOT_PASSWORD=123456  -d mysql:8.0.20
# 如果不知道具体目录可以进入容器查看
docker exec -it mysql /bin/bash
# 拷贝配置文件
docker cp mysql:/etc/mysql /home/dibtp/mysql8.0.20/
# 停止删除容器
docker stop mysql
# 如果出现使用root用户还出现 cannot stop container: mysql: permission denied,先执行以下命令,再stop容器
aa-remove-unknown

# 5. 启动mysql,使用数据卷持久化,使用绑定挂载配置文件

vim docker_run_mysql8.0.20.sh

# 将以下命令写入脚本 或 直接运行

docker run \
-p 3306:3306 \
--name mysql \
--privileged=true \
--restart unless-stopped \
--mount source=dv_mysql_data,target=/var/lib/mysql \
--mount type=bind,source=/home/dibtp/mysql8.0.20/mysql,target=/etc/mysql \
--mount type=bind,source=/home/dibtp/mysql8.0.20/logs,target=/logs \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0.20

# 命令解释
--privileged=true 使容器挂载文件具有操作权限
--restart unless-stopped 开机自动重启
--mount source=dv_mysql_data,target=/var/lib/mysql 使用dv_mysql_data 数据卷(Volumes)将数据持久化
--mount type=bind,source=/home/dibtp/mysql8.0.20/mysql,target=/etc/mysql 绑定挂载(Bind-Mounts)MySQL配置文件
--mount type=bind,source=/home/dibtp/mysql8.0.20/logs,target=/logs 绑定挂载(Bind-Mounts)MySQL日志文件
-e MYSQL_ROOT_PASSWORD=123456 设置环境变量,设置了 MySQL root 用户的密码为 123456

# 6. 执行脚本或者直接运行以上命令
chmod +x docker_run_mysql8.0.20.sh
./docker_run_mysql8.0.20.sh

# 7. 查看容器是否正常运行

docker ps

posted @   等你下课啊  阅读(144)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示