推荐答案
# 拉取 MySQL 镜像 docker pull mysql:latest # 运行 MySQL 容器 docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 mysql:latest
本题详细解读
1. 拉取 MySQL 镜像
首先,我们需要从 Docker Hub 上拉取 MySQL 的官方镜像。使用以下命令:
docker pull mysql:latest
这个命令会从 Docker Hub 下载最新版本的 MySQL 镜像。
2. 运行 MySQL 容器
接下来,我们需要运行一个 MySQL 容器。使用以下命令:
docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 mysql:latest
--name mysql-container
:为容器指定一个名称,这里我们命名为mysql-container
。-e MYSQL_ROOT_PASSWORD=my-secret-pw
:设置 MySQL 的 root 用户密码为my-secret-pw
。-d
:以守护进程(后台)模式运行容器。-p 3306:3306
:将宿主机的 3306 端口映射到容器的 3306 端口,这样可以通过宿主机的 3306 端口访问 MySQL 服务。mysql:latest
:指定使用的镜像为mysql:latest
。
3. 验证 MySQL 容器是否运行
可以使用以下命令查看容器是否正在运行:
docker ps
如果看到 mysql-container
正在运行,说明 MySQL 数据库已经成功部署。
4. 连接到 MySQL 数据库
可以使用以下命令连接到 MySQL 数据库:
mysql -h 127.0.0.1 -P 3306 -u root -p
输入之前设置的密码 my-secret-pw
,即可成功连接到 MySQL 数据库。
5. 持久化数据
为了确保数据在容器重启后不会丢失,可以将 MySQL 的数据目录挂载到宿主机的某个目录。例如:
docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 -v /path/to/host/dir:/var/lib/mysql mysql:latest
其中 /path/to/host/dir
是宿主机上的目录,/var/lib/mysql
是容器内 MySQL 的数据目录。