1. 查看MySQL版本
https://hub.docker.com/_/mysql?tab=tags
2. 拉取MySQL镜像
docker pull mysql
//默认拉取的是最新的镜像
3. 查看本地镜像
sudo docker images
4. 运行容器
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:latest
// -p 3306:3306 将容器中的3306端口和linux的3306端口进行绑定
// -name mysql 命名容器的名字为mysql
// -v /mydata/mysql/data:/var/lib/mysql 将mysql容器内部的文件挂载到linux系统中目录为/mydata/mysql/data的文件夹下,类似于快捷方式
// -v /mydata/mysql/conf:/etc/mysql 将mysql容器内部的文件挂载到linux系统中目录为/mydata/mysql/conf,类似于快捷方式
// -v /mydata/mysql/log:/var/log/mysql 将mysql容器内部的文件挂载到linux系统中目录为/mydata/mysql/log,类似于快捷方式
// -e MYSQL_ROOT_PASSWORD=123456
// -d mysql:latest
如果启动不起来,删除容器,重新创建容器
docker run \
-d -p 3306:3306 \
-v /usr/local/mysql/conf:/etc/mysql/conf.d \
-v /usr/local/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql mysql:latest
5. 配置mysql
第一步:进入到mysql挂载的数据卷下
cd /mysqldata/mysql/conf
第二步:创建my.cnf文件
touch my.cnf
第三步:使用vim命令修改my.cnf文件
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
第四步:保存并退出
wq!
6. 重启mysql
docker restart mysql
7. 查看docker中mysql是否安装成功
docker ps