Docker Hub 上官方 MySQL 镜像地址:https://hub.docker.com/_/mysql。
MySQL 官方维护的 Docker 镜像,提供了多个版本的 MySQL,适用于不同的需求。
Docker Hub MySQL 镜像页面内容
在这个页面上,你可以找到以下信息:
-
支持的版本(Tags) :
-
页面列出了所有可用的 MySQL 镜像版本(Tags),例如:
-
mysql:8.0
:最新的 MySQL 8.0.x 版本。 -
mysql:5.7
:最新的 MySQL 5.7.x 版本。 -
mysql:latest
:指向最新的稳定版本(通常是 8.0.x)。 -
mysql:9.1.0
:最新的版本(可能是测试版或开发版)。
-
-
-
使用说明:
- 如何拉取镜像。
- 如何运行容器。
- 如何配置 MySQL(如设置 root 密码、挂载数据卷等)。
-
环境变量:
- 常用的环境变量(如
MYSQL_ROOT_PASSWORD
、MYSQL_DATABASE
、MYSQL_USER
、MYSQL_PASSWORD
等)。
- 常用的环境变量(如
-
持久化数据:
- 如何通过挂载数据卷(Volume)实现数据持久化。
-
自定义配置文件:
- 如何挂载自定义的 MySQL 配置文件(如
my.cnf
)。
- 如何挂载自定义的 MySQL 配置文件(如
-
日志和故障排查:
- 如何查看 MySQL 日志。
- 常见问题的解决方法。
如何使用 MySQL Docker 镜像
以下是基于 Docker Hub 页面的快速使用指南:
1. 拉取 MySQL 镜像
拉取最新的 MySQL 8.0 镜像:
docker pull mysql:8.0
2. 运行 MySQL 容器
启动一个 MySQL 容器,并设置 root 密码:
docker run -d \
--name mysql-container \
-e MYSQL_ROOT_PASSWORD=yourpassword \
mysql:8.0
3. 挂载数据卷
将 MySQL 数据目录挂载到本地,实现数据持久化:
docker run -d \
--name mysql-container \
-v /path/to/local/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=yourpassword \
mysql:8.0
4. 挂载自定义配置文件
挂载自定义的 MySQL 配置文件(如 my.cnf
):
docker run -d \
--name mysql-container \
-v /path/to/local/mysql/data:/var/lib/mysql \
-v /path/to/local/mysql/conf.d:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=yourpassword \
mysql:8.0
5. 进入 MySQL 容器
进入容器的命令行界面:
docker exec -it mysql-container bash
6. 连接到 MySQL
在容器内连接到 MySQL:
mysql -u root -p
常见问题
1. 如何查看 MySQL 日志?
MySQL 日志默认输出到容器的标准输出。你可以通过以下命令查看:
docker logs mysql-container
2. 如何备份数据?
使用 docker cp
命令将数据目录复制到本地:
docker cp mysql-container:/var/lib/mysql /path/to/backup
3. 如何升级 MySQL 版本?
-
停止并删除旧容器:
docker stop mysql-container docker rm mysql-container
-
拉取新版本镜像:
docker pull mysql:8.0
-
启动新容器并挂载旧数据目录:
docker run -d \ --name mysql-container \ -v /path/to/local/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=yourpassword \ mysql:8.0
总结
- Docker Hub 上的 MySQL 镜像页面提供了详细的文档和使用说明。
- 你可以根据需要选择合适的 MySQL 版本(如 8.0 或 5.7)。
- 通过挂载数据卷和配置文件,可以实现数据持久化和自定义配置。