我的Docker专栏
https://blog.csdn.net/weixin_45580378/category_12276045.html
docker 镜像
https://registry.hub.docker.com/_/mysql/tags
1.版本号可不写 不写就是最新版本 最好写上
docker pull mysql:版本号
2.查看镜像是否安装成功 如下图
docker images
3.创建文件夹
注:可以自定义建在某处,这个是用来挂载到主机上的,因为docker是一个小的内部服务器吧,个人理解的;挂载目的是方便在主机上查看配置和文件,在主机修改配置的时候,docker内的也会自动修改。
mkdir /home/docker/mysql/conf
mkdir /home/docker/mysql/data
4.启动 --name 是自定义名字 mysql后的版本号注意改成自己的
注:/etc/mysql/conf.d 和 /var/lib/mysql 是docker内部的路径,如果想要看看这两个路径,可以用 docker exec -it mysql8 bash 进入命令行,-v 命令是挂载的意思
sudo docker run -d -p 3306:3306 -v /home/docker/mysql/conf:/etc/mysql/conf.d -v /home/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root --name mysql8 mysql:8.0.32
5.查看运行中的镜像 status 中的up 证明在运行
docker ps -a
6.docker 进入 mysql 命令行 并登录
#1.
docker exec -it mysql8 bash
#2.
mysql -uroot -p
7.可以用Navicat连接数据库测试
如果连不上 那就是没有开通3306端口
可以打开服务器管理页面操作 这里展示腾讯云的
同时开启防火墙 并开通3306端口
##1、开启防火墙
systemctl start firewalld
##2、开放指定端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
##3、重新加载防火墙
firewall-cmd --reload
##4、查看端口号
netstat -ntlp //查看当前所有tcp端口·
netstat -ntulp | grep 1935 //查看所有3306端口使用情况·
以下操作有需要再执行
8.停止运行中的镜像 mysql8 是第5步的NAMES
docker stop mysql8
9.删除运行中的镜像
docker rm mysql8
10.删除镜像 如果镜像正在运行 必须执行上两步 1fecb86b5237 是镜像IMAGE ID 可看第2步图
docker rmi 1fecb86b5237