docker安装mysql
docker安装mysql:latest
下载镜像
在 Docker 里,:latest 是 一个镜像标签(tag),表示“该镜像库中官方标记的最新稳定版本”。它不是固定版本号,而是一个 动态指向当前最新发布的版本。
# 或者 mysql:8.0
docker pull mysql:latest

查看镜像有没有下载成功
docker images

创建mysql需要的三个目录:
data: 数据持久化
conf: 自定义配置文件
init: 初始化 SQL 脚本(第一次启动时执行)
# 删除文件夹 rm -rf 文件夹
# 创建文件夹 并设置 读写权限
mkdir -p /root/eshop/mysql8/data
mkdir -p /root/eshop/mysql8/conf
mkdir -p /root/eshop/mysql8/init
chmod -R 777 /root/eshop/mysql8/data
chmod -R 777 /root/eshop/mysql8/conf
chmod -R 777 /root/eshop/mysql8/init

编辑配置文件
vim /root/eshop/mysql8/conf/conf.d
编辑完成之后可以使用 cat /root/eshop/mysql8/conf/conf.d查看
conf.d配置如下
[client]
default_character_set=utf8mb4
[mysql]
default_character_set=utf8mb4
[mysqld]
character_set_server=utf8mb4
collation_server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

运行镜像:
--name mysql8:容器名称--restart=always:开机自启动-p 3306:3306:映射宿主机3306端口到容器3306端口-v /root/eshop/mysql8/data:/var/lib/mysql:数据目录映射到宿主机,持久化数据库-v /root/eshop/mysql8/conf:/etc/mysql/conf.d:配置文件目录映射,可放my.cnf片段-v /root/eshop/mysql8/init:/docker-entrypoint-initdb.d:初始化SQL脚本目录-e MYSQL_ROOT_PASSWORD=root123:设置 root 密码-e MYSQL_DATABASE=django_demo:启动时自动创建数据库-e MYSQL_USER=django:普通用户-e MYSQL_PASSWORD:普通用户密码-d:后台运行
docker run -d \
--name mysql \
--restart=always \
-p 3306:3306 \
-v /root/eshop/mysql8/data:/var/lib/mysql \
-v /root/eshop/mysql8/conf:/etc/mysql/conf.d \
-v /root/eshop/mysql8/init:/docker-entrypoint-initdb.d \
-e MYSQL_ROOT_PASSWORD=root \
-e MYSQL_DATABASE=django_demo \
mysql:latest

可以查看容器是否运行
docker ps

📌 创作不易,感谢支持!
每一篇内容都凝聚了心血与热情,如果我的内容对您有帮助,欢迎请我喝杯咖啡☕,您的支持是我持续分享的最大动力!
💬 加入交流群(QQ群):576434538

浙公网安备 33010602011771号