1. 安装docker
#卸载docker及其相关组件
sudo apt-get remove docker docker-ce docker.io containerd runc
#安装Docker
sudo apt install docker.io
#查看版本
docker --version
2. 配置镜像源
sudo vim /etc/docker/daemon.json
#:wq 保存退出
#ctrl p 上一条指令
#ctrl u 删除一行
{
“registry-mirrors”: [
“https://registry.docker-cn.com”,
“http://hub-mirror.c.163.com”,
“https://dockerhub.azk8s.cn”,
“https://mirror.ccs.tencentyun.com”,
“https://registry.cn-hangzhou.aliyuncs.com”,
“https://docker.mirrors.ustc.edu.cn”,
“https://docker.m.daocloud.io”,
“https://noohub.ru”,
“https://huecker.io”,
“https://dockerhub.timeweb.cloud”
]
}
3. 拉取mysql镜像
sudo docker pull mysql:8.3.0
4. 挂载
#创建
mkdir -p ~/mysql/{conf,data,log} #文件不存在运行时会自建
#配置文件
cd mysql/conf
vim test.cnf #名字无所谓
[client]
default_character_set=utf8mb4
[mysql]
default_character_set=utf8mb4
[mysqld]
character_set_server=utf8mb4
collation_server=utf8mb4_unicode_ci
init_connect=‘SET NAMES utf8mb4’
5. 安装启动mysql
sudo docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
-v ~/mysql/data:/var/lib/mysql \
-v ~/mysql/conf:/etc/mysql/conf.d \
-v ~/mysql/log:/var/log/mysql \
--network test \
mysql:8.3.0
连接成功
mysql -u root -p -h 127.0.0.1 -P 3306
远程连接失败 -> 尝试端口是否开放
telnet <虚拟机IP地址> <端口号>