docker安装mysql

1. 创建本地文件夹

mkdir -p /docker/mysql8/conf
mkdir -p /docker/mysql8/data
mkdir -p /docker/mysql8/log

2. 新建配置文件

在conf文件夹中创建文件:mysql.conf
文件内容:

[mysqld]
init-connect="SET collation_connection=utf8mb4_unicode_ci"
init_connect="SET NAMES utf8mb4"
max_connections=1000
bind-address=0.0.0.0

3. 拉取镜像

docker pull mysql

4. 启动镜像

docker run --restart=always --name mysql8-dev \
-v /docker/mysql8/log:/var/log/mysql \
-v /docker/mysql8/data:/var/lib/mysql \
-v /docker/mysql8/conf/mysql.conf:/etc/mysql/my.cnf \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=yyyxxx \
-e TZ=Asia/Shanghai \
-d mysql

解释:来自ChatGPT

这条命令是用来启动一个 MySQL Docker 容器的。让我们一步步地解释这条命令的各个部分:

  1. docker run:这是 Docker 的一个基本命令,用于启动一个新容器。

  2. --restart=always:这个选项指定了容器的重启策略。设置为 always 意味着无论容器因何原因停止运行,Docker 都会自动重启它。

  3. --name mysql8:这里指定了容器的名称为 mysql8。通过这个名称,你可以轻松地引用或操作这个容器。

  4. -v /docker/mysql8/log:/var/log/mysql:这是一个数据卷的挂载指令,它将宿主机的 /docker/mysql8/log 目录挂载到容器的 /var/log/mysql 目录。这意味着容器内的 MySQL 日志会被保存到宿主机的指定目录中。

  5. -v /docker/mysql8/data:/var/lib/mysql:同样是一个数据卷的挂载,将宿主机的 /docker/mysql8/data 目录挂载到容器的 /var/lib/mysql 目录。这里存储的是 MySQL 数据库的数据文件。

  6. -v /docker/mysql8/conf/mysql.conf:/etc/mysql/my.cnf:将宿主机的 /docker/mysql8/conf/mysql.conf 文件挂载到容器的 docker/mysql8/conf/mysql.conf 文件,用于自定义 MySQL 的配置。

  7. -p 3306:3306:这是端口映射的设置。它将容器的 3306 端口映射到宿主机的 3306 端口,使得你可以通过宿主机的 3306 端口来访问容器中的 MySQL 服务。

  8. -e MYSQL_ROOT_PASSWORD=yyyxxx:这里设置了环境变量 MYSQL_ROOT_PASSWORD,其值为 yyyxxx。这个环境变量是用来设置 MySQL root 用户的密码的。

  9. -d mysql-d 选项让容器在后台运行。mysql 指定了要使用的镜像,这里使用的是 mysql 镜像。

综上所述,这条命令创建了一个名为 mysql8 的 MySQL 容器,设置了数据卷和端口映射,并配置了 root 用户密码。容器会在后台运行,并且会在停止后自动重启。

posted @ 2024-03-24 19:28  梦里不分西东  阅读(116)  评论(0编辑  收藏  举报