1、拉取 MySQL 镜像
这里我们拉取官方的最新版本的镜像:
$ docker pull mysql:latest
2、查看本地镜像
使用以下命令来查看是否已安装了 mysql:
$ docker images
3、运行容器
# 创建目录 cd dev && mkdir conf log data #创建配置文件 cd /mnt/data/mysql_file/33061/conf #新建配置文件 vim my.cnf[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
我们可以使用以下命令来运行 mysql 容器:
$ docker run -d --user root -p 33061:3306 --name mysql33061 -v /mnt/data/mysql_file/33061/log:/var/log/mysql -v /mnt/data/mysql_file/33061/data:/var/lib/mysql -v /mnt/data/mysql_file/33061/conf/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD='Mysql123456!!!' mysql:8.0
上述命令的含义:
docker run:在docker中启动一个容器实例
-d:该容器在后台运行
-p 33061:3306:容器与主机映射端口为,主机33061,容器3306
--name mysql33061:容器运行后的名称
-v /mnt/data/mysql_file/33061/log:/var/log/mysql:将容器/var/log/mysql目录下的数据,备份到主机的 /mnt/data/mysql_file/33061/log目录下
-v /mnt/data/mysql_file/33061/data:/var/lib/mysql:将容器/var/lib/mysql目录下的数据,备份到主机的 /mnt/data/mysql_file/33061/data目录下
-v /mnt/data/mysql_file/33061/conf:/etc/mysql:将容器/etc/mysql目录下的数据,备份到主机的 /mnt/data/mysql_file/33061/conf目录下
-e MYSQL_ROOT_PASSWORD=root:设置当前mysql实例的密码为root
mysql:8.0:需要运行的容器名称以及版本号
通过此处-v 命令备份后,就算当前mysql容器实例被删除,那么再次重启mysql容器后,数据将会自动重主机加载到容器当中
4、安装成功
通过 docker ps 命令查看是否安装成功:
本机可以通过 root 和密码 访问 MySQL 服务。