在 Docker 中部署 Mysql 并挂载配置文件

2023-08-17 16:30:27 浏览数 (1)

在 Docker 中部署 MySQL 并挂载配置文件,可以使用以下步骤:

创建本地目录

首先,在主机上创建一个目录,用于存放 MySQL 的配置文件。例如,创建一个名为 mysql 的目录,用于存放 MySQL 的配置文件。

代码语言:javascript复制
mkdir mysql
mkdir mysql/conf
mkdir mysql/data

拉取 MySQL 镜像

使用以下命令从 Docker Hub 上拉取 MySQL 的最新镜像:

代码语言:javascript复制
docker pull mysql

启动 MySQL 容器

使用以下命令启动一个名为 mysql 的 MySQL 容器,并将主机的 mysql 目录挂载到容器内的 /etc/mysql/conf.d 目录:

代码语言:javascript复制
docker run --name mysql -v  /root/mysql/conf:/etc/mysql  -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d -p 3307:3307 mysql:5.7  --defaults-file=/etc/mysql/my.cnf

其中,--name 指定容器名称,-v /path/to/mysql:/etc/mysql/conf.d 将主机的 mysql 目录挂载到容器内的 /etc/mysql/conf.d 目录,-v /path/to/mysql/data:/var/lib/mysql 将主机的 mysql/data 目录挂载到容器内的 /var/lib/mysql 目录,-e MYSQL_ROOT_PASSWORD=<password> 指定 MySQL 的 root 用户的密码,-d 表示以后台模式启动容器,-p 3306:3306 将容器的 3306 端口映射到主机的 3306 端口。

修改 MySQL 配置文件

在主机的 mysql 目录中创建一个名为 my.cnf 的文件,用于修改 MySQL 的配置。例如,以下是一个简单的配置文件示例:

代码语言:javascript复制
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

在这个示例中,我们指定了 MySQL 的字符集和排序规则。

重启 MySQL 容器

在主机的 mysql 目录中修改 my.cnf 文件后,需要重启 MySQL 容器使配置生效。使用以下命令重启容器:

代码语言:javascript复制
docker restart mysql

连接 MySQL

使用以下命令连接到 MySQL:

代码语言:javascript复制
mysql -h 127.0.0.1 -P 3306 -u root -p

其中,-h 指定 MySQL 的 IP 地址,-P 指定 MySQL 的端口,-u 指定用户名,-p 表示需要输入密码。

以上就是在 Docker 中部署 MySQL 并挂载配置文件的步骤。需要注意的是,MySQL 的配置文件可以根据实际需求进行自定义,可以参考 MySQL 官方文档进行配置。

0 人点赞