第一篇 简单的docker安装
0、卸载旧版本
# yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
1、安装所需包
第一步卸载mariadb
# yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2、使用以下命令设置稳定的存储库。即使您想从边缘或测试存储库安装构建,也总是需要稳定的存储库。
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3、启用边缘和测试存储库
# yum-config-manager --disable docker-ce-edge
4、安装docker
# yum install docker-ce
5、Docker 基本命令
# systemctl start docker // 启动docker
# systemctl stop docker // 关闭docker
# docker restart xxx // 重启一个容器
# docker stop xxx // 停止一个容器
# docker rm xxx // 删除一个容器
# docker rm -f xxx // 强制删除一个容器
# docker log xxx // 查看容器日志
# docker ps -a // 查看容器信息
# docker search xxx // 查看 hub上的 xxxx 镜像
# docker pull xxx // 下载包
第二篇 简单的docker下安装mysql
1、添加镜像
docker pull mysql
2、在/data下新建文件夹mysql,进入mysql文件夹新建文件夹data
mkdir /data/mysql
mkdir /data/mysql/data
3、启动
docker run -d -e MYSQL_ROOT_PASSWORD=123456\
--name mysql --net elec_default --restart always \
-v /data/mysql/data:/var/lib/mysql -p 3306:3306 mysql
4、说明
docker run -d -e MYSQL_ROOT_PASSWORD=123456\ # 指定数据库密码
--name mysql --net elec_default --restart always \ # 指定容器名称和设置自启
-v /data/mysql/data:/var/lib/mysql -p 3306:3306 mysql # 设置存储路径、端口
5、如果mysql是 8 版本以上应该会出一下错误
连接Docker启动的mysql出现:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£
解决方案
1.进入mysql容器
docker exec -it mysql /bin/bash
2.进入mysql
mysql -uroot -p123456
3.修改密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
第三篇 docker下安装多个mysql
1、首先安装docker
参考第一篇安装docker
参考第二篇安装mysql
2、创建文件
# mkdir /data
# mkdir /data/mysql
# mkdir /data/mysql/data5.6
# mkdir /data/mysql/data5.7
# mkdir /data/mysql/data8.0
3、添加镜像
# docker pull mysql:5.6
# docker pull mysql:5.7
# docker pull mysql:8.0
4、启动镜像
# docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.6 --restart always -v /data/mysql/data5.6:/var/lib/mysql -p 3306:3306 mysql:5.6
# docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.7 --restart always -v /data/mysql/data5.7:/var/lib/mysql -p 3307:3306 mysql:5.7
# docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0 --restart always -v /data/mysql/data8.0:/var/lib/mysql -p 3308:3306 mysql:8.0
5、打开端口
//开启防火墙
# systemctl start firewalld
//开启3306端口
# firewall-cmd --zone=public --add-port=3306/tcp --permanent
//开启3307端口
# firewall-cmd --zone=public --add-port=3307/tcp --permanent
//开启3308端口
# firewall-cmd --zone=public --add-port=3308/tcp --permanent
//重启防火墙
# systemctl restart firewalld.service
6、本地测试
Navicat
7、如果mysql是 8 版本以上应该会出一下错误
连接Docker启动的mysql出现:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£
解决方案
1.进入mysql容器
docker exec -it mysql /bin/bash
2.进入mysql
mysql -uroot -p123456
3.修改密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';