Docker 安装 MySQL5.7
拉取Mysql镜像
docker pull mysql:5.7
创建本地数据目录和配置文件
先在主机上准备存储 MySQL 数据的目录和自定义配置文件。
# 创建数据存储目录
mkdir -p ~/mysql/data
# 创建自定义配置文件目录
mkdir -p ~/mysql/config
# 如果需要自定义配置文件,可以创建一个 my.cnf
cat <<EOF > ~/mysql/config/my.cnf
[mysqld]
# 示例配置,按需修改
bind-address = 0.0.0.0
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
EOF
启动 MySQL 5.7 容器
运行以下命令安装并启动容器:
docker run -d \
--name mysql5.7 \
-p 3306:3306 \
-v ~/mysql/data:/var/lib/mysql \
-v ~/mysql/config/my.cnf:/etc/mysql/my.cnf \
-e MYSQL_ROOT_PASSWORD=Marmot123 \
--restart=always \
mysql:5.7
--name mysql5.7
:设置容器名称为 mysql5.7。-p 3306:3306
:将主机的 3306 端口映射到容器的 3306 端口。-v ~/mysql/data:/var/lib/mysql
:将本地目录 ~/mysql/data 映射到容器的数据目录。-v ~/mysql/config/my.cnf:/etc/mysql/my.cnf
:将自定义配置文件挂载到容器中。-e MYSQL_ROOT_PASSWORD=Marmot123
:设置 MySQL 的 root 用户密码。--restart=always
:设置容器随 Docker 服务自启动。mysql:5.7
:指定使用 MySQL 5.7 镜像。
确认容器状态
运行以下命令查看容器是否运行正常:
docker ps -a
检查 MySQL 服务状态
进入容器检查 MySQL 是否正常运行:
docker exec -it mysql5.7 bash
# 在容器内登录 MySQL
mysql -uroot -p