1、拉取镜像
我们可以拉取一个 MySQL 5.7 的镜像
docker pull mysql:5.7
2、启动容器
通过下面的命令启动:
docker run -itd -p 23306:3306 -v /Users/hunter/docker-mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
这样就可以通过命令或者 workbench 连接到这个 MySQL 服务了。
使用 root 账号,密码为我们设置的 123456
下面介绍一下相关的参数
3、参数介绍
-p 23306:3306
是将容器的 3306 端口映射到宿主机的 23306 端口,这样,就可以通过访问宿主机的 23306 端口访问 MySQL 服务了
注意:宿主机的端口在前,容器的端口在后
-v /Users/hunter/docker-mysql-data:/var/lib/mysql
-v 是挂载命令,这个意思是将容器的 /var/lib/mysql 挂载到宿主机的 /Users/hunter/docker-mysql-data 目录。
这样就算我们把容器删除,mysql 存的数据也不会消失,从而实现数据的持久性
注意: 宿主机的目录在前,容器的目录在后,这一点和 -p 参数是一致的
-e MYSQL_ROOT_PASSWORD=123456
因为在启动一个 MySQL 容器的时候必须指定 MYSQL_ROOT_PASSWORD、MYSQL_ALLOW_EMPTY_PASSWORD、MYSQL_RANDOM_ROOT_PASSWORD 这三个参数中的一个,才可以运行,我们这边使用的是指定的 root 的密码