docker run自定义mysql配置

文章详细介绍了如何使用Docker拉取MySQL8.0镜像,创建自定义文件夹,运行并配置MySQL容器,复制配置文件和数据文件,以及重新运行容器并设置数据卷。最后,文章提到了开放端口以实现远程访问。

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

1、拉取mysql镜像

        docker pull mysql:8.0

2、查看拉取镜像的IMAGE ID

        docker images

3、创建自定义文件夹

mkdir -p /dockerStudy/mysql/mysql1/conf /dockerStudy/mysql/mysql1/data

4、run一个mysql容器将其配置文件复制到/dockerStudy/mysql/mysql1/conf下,根据自己需求配置

#run
docker run -d -p 3306:3306 --name myMysql -e MYSQL_ROOT_PASSWORD=root mysql:8.0

#进入容器

docker exec -it mysql或者mysql容器ID /bin/bash

#查找Docker内,MySQL配置文件my.cnf的位置
mysql --help | grep my.cnf
#以下为结果
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf 

#复制配置文件到指定文件夹(注意:不同版本my.cnf所在位置不一样,但一定在上述结果的其中一个内)
docker cp myMysql:/etc/my.cnf /dockerStudy/mysql/mysql1/conf

#复制mysql数据文件到指定目录(可选,这里不使用)
docker cp myMysql:/var/lib/mysql /dockerStudy/mysql/mysql1/data

5、删除之前的容器

6、重新run容器(指定数据卷)

docker run  -d  -p 3306:3306 \
--name mysql1 \
--privileged=true \
--restart=unless-stopped \
-v /dockerStudy/mysql/mysql1/conf/my.cnf:/etc/my.cnf \
-v /dockerStudy/mysql/mysql1/logs:/var/log/mysql \    #可选
-v /dockerStudy/mysql/mysql1/data:/var/lib/mysql \    #可选
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:8.0

7、此时即可访问

8、远程访问

#开放端口
sudo ufw allow 3306


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值