docker配置使用mysql镜像

本文介绍如何使用Docker部署MySQL数据库,包括拉取镜像、设置映射端口、配置密码及数据持久化。同时,展示了ShowDoc与WordPress的容器化部署流程,涉及配置文件挂载与容器间链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 拉取镜像等
#################################################
#拉取镜像
docker pull mysql:5.7
#################################################
# 直接启动,设置映射端口3318,mysql的root密码为root,容器移除之后不会保存数据。
docker run -p 3318:3306 --rm --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
##################################################
# 挂载主机目录启动
docker run --name --rm mysql -v /usr/local/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7   
# a初始化之后password参数就没有作用了,可以去除
docker container stop mysql 
docker run --rm --name mysql -v /usr/local/mysql/data:/var/lib/mysql -d mysql:5.7   

  • 设置配置文件
    • 方法一,在容器内修改 /etc/mysql/my.cnf 之后,重新打包为一个镜像运行,不在这里说明
    • 方法二,挂载主机的配置文件目录,由于容器会加载/etc/mysql/conf.d目录里的配置文件进行配置,因此我们把这个目录挂载到主机目录下. vi /usr/local/mysql/etc/my.cnf
# 输入类似如下等相关mysql配置,保存 
#[mysqld]
#connect-timeout=12
  • 设置conf后运行,如下
docker run --rm --name mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/etc:/etc/mysql/conf.d  -d mysql:5.7 
综上,并且加上docker启动时自动启动该镜像,–restart=always,去除测试用的 --rm 参数, 最终使用如下
docker run  -p 3318:3306  --restart=always --name mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/etc:/etc/mysql/conf.d  -d mysql:5.7 

参考: https://hub.docker.com/_/mysql?tab=description

p.s 其他镜像也是类似的方式.

showdoc
docker pull star7th/showdoc
#新建存放showdoc数据的目录
mkdir /showdoc_data
mkdir /showdoc_data/html
chmod 777 -R /showdoc_data
#启动showdoc容器。启动完了后别忘记后面还有转移数据的步骤。
docker run -d --name showdoc -p 4999:80 -v /showdoc_data/html:/var/www/html/ registry.docker-cn.com/star7th/showdoc
#转移数据。执行这里的时候留意命令行界面有没有权限禁止的错误提示。
#如果有,则检查权限,或者安全限制(比如说可能selinux会禁止docker进程写文件)
docker exec showdoc \cp -fr /showdoc_data/html/ /var/www/
docker run --restart=always -d --name showdoc -p 5080:80 -v /showdoc_data/html:/var/www/html/ registry.docker-cn.com/star7th/showdoc
wordpress
docker run --name wordpress -v /wordpress_data/html:/var/www/html/ -d --restart=always -i -t -p 5081:80/tcp -e WORDPRESS_DB_HOST=host:3306 -e WORDPRESS_DB_NAME=wordpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=password wordpress:4.9
#或者.
docker run --name wordpress --link mysql:mysql -d wordpress
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值