使用Docker创建MySQL容器并映射配置文件和数据目录
以下是在Windows环境下使用Docker Desktop创建MySQL服务容器的步骤。假设你已安装Docker Desktop,并使用PowerShell或命令提示符。
- 创建宿主机目录:
- 为数据文件创建目录:
mkdir C:\mysql\data - 为配置文件创建目录:
mkdir C:\mysql\config
- 为数据文件创建目录:
- 准备my.cnf文件:
- 从MySQL官方镜像复制默认配置文件(可选),或创建自定义的my.cnf文件。
- 示例:将my.cnf放置在
C:\mysql\config\my.cnf。如果没有,可从容器中复制:
docker run –rm mysql:latest cat /etc/mysql/my.cnf > C:\mysql\config\my.cnf -
- 然后编辑该文件以自定义设置。
- 运行MySQL容器:
- 使用以下命令创建并启动容器,映射数据目录和配置文件。替换
your_root_password为实际密码。
docker run –name mysql-container -e MYSQL_ROOT_PASSWORD=your_root_password -p 3306:3306 -v C:\mysql\data:/var/lib/mysql -v C:\mysql\config\my.cnf:/etc/mysql/my.cnf -d mysql:latest-
- 参数说明:
--name mysql-container:容器名称。-e MYSQL_ROOT_PASSWORD:设置root密码。-p 3306:3306:映射端口。-v C:\mysql\data:/var/lib/mysql:映射数据目录。-v C:\mysql\config\my.cnf:/etc/mysql/my.cnf:映射配置文件。-d:后台运行。mysql:latest:使用最新MySQL镜像。
- 参数说明:
- 验证容器:
- 检查运行状态:
docker ps - 连接MySQL:使用MySQL客户端连接到localhost:3306,用户名root,密码your_root_password。
- 检查运行状态:
注意:确保Docker Desktop正在运行,且路径使用Windows格式(反斜杠)。如果遇到权限问题,使用管理员权限运行命令提示符。数据和配置会持久化在宿主机目录中。
-
- 使用以下命令创建并启动容器,映射数据目录和配置文件。替换