安装mysql5.7方式如下
一、拉取镜像
docker pull mysql:5.7
二、创建MySQL在宿主机对应的目录映射
mkdir -p /usr/local/mysql/{logs,data}
三、切换到宿主机的mysql目录
cd /usr/local/mysql
四、启动docker中MySQL镜像
docker run -p 3306:3306 --name my_mysql \ -v $PWD/logs:/var/log/mysql \ -v $PWD/data:/var/lib/mysql \ --restart=always --privileged=true \ -e MYSQL_ROOT_PASSWORD=123456 \ -d mysql:5.7
命令解释
docker run :是docker创建容器命令
-p 宿主机端口:容器端口 :端口映射
–name 容器名 :自定义容器名
-v 宿主机目录:容器目录 :目录映射在这里目录映射了mysql容器中的日志、数据库文件
–restart=always :docker启动时自启动该容器
–privileged=true :获取容器真实root权限
-e MYSQL_ROOT_PASSWORD :设置mysql root账户初始密码
-d 镜像:版本 :选择要创建容器的镜像,并在后台运行
安装mysql8方式如下
1.安装mysql
docker pull mysql:8.0.30
2.创建my.cnf文件
D:\home\docker\docker-data\mysql-data\my.cnf
3.启动mysql
docker run
-p 3306:3306 (端口映射)
-e MYSQL_ROOT_PASSWORD=19920413w (设置root密码)
-v D:/home/docker/docker-data/mysql-data/data:/var/lib/mysql:rw
-v D:/home/docker/docker-data/mysql-data/log:/var/log/mysql:rw
-v D:/home/docker/docker-data/mysql-data/my.cnf:/etc/mysql/my.cnf:rw
--name mysql
--privileged=true
--restart=always
-d mysql:8.0.30 (后台运行)
上面的换行去掉,变成一行
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -v D:/home/docker/docker-data/mysql-data/data:/var/lib/mysql:rw -v D:/home/docker/docker-data/mysql-data/log:/var/log/mysql:rw -v D:/home/docker/docker-data/mysql-data/my.cnf:/etc/mysql/my.cnf:rw --name mysql --privileged=true --restart=always -d mysql:8.0.30
4.查看启动日志
docker ps docker logs 容器ID