安装Docker虚拟机
yum install -y docker
docker服务启动、停止、重启
service docker start
service docker stop
service docker restart
替换docker镜像下载地址为腾讯云
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s https://mirror.ccs.tencentyun.com
网络上查找java相关的docker镜像
docker search java
下载镜像
docker pull 镜像名
显示所有docker镜像
docker images
删除docker镜像(确定镜像内没有容器)
docker rmi 镜像名
重命名docker镜像
docker tag docker.io/openjdk openjdk
docker rmi docker.io/openjdk
docker镜像导出
docker save -o /root/openjdk.tar.gz 镜像名
docker镜像导入
docker load < /root/openjdk.tar.gz
给镜像创建容器
docker run -it #后台运行
--name java #创建名字
-p 9000:8080 #端口映射
-v /root/java:/root/java --privileged #目录挂载
--net=虚拟网络名 #加入虚拟网络
openjdk #容器名
进入容器交互页面
docker exec -it 容器名 bash
在docker容器编译java文件并运行
cd /root/java
javac Hello.java
java Hello.java
退出交互界面
exit
显示所有容器
docker ps -a
删除docker容器
docker rm 容器名
启动容器
docker start -i 容器名
暂停容器运行
docker pause 容器名
恢复运行
docker unpause 容器名
关闭容器
docker stop 容器名
创建Swarm集群(该节点自动变成管理节点)
docker swarm init
firewall-cmd --zone=public --add-port=2377/tcp --permanent
firewall-cmd --reload
service docker restart
加入Swarm集群
docker swarm join --token 集群编号 IP地址
查看所有docker节点(管理节点上执行)
docker node ls
删除节点(管理节点上执行)
docker node rm -f 节点编号
退出Swarm集群(管理节点上执行)
docker swarm leave -f
退出Swarm集群(Workd节点上执行)
docker swarm leave
查看虚拟网络
docker network ls
创建虚拟网络(虚拟网络只能在管理节点上操作)
docker network create -d overlay --attachable 虚拟网络名称
删除虚拟网络(先删除该网络上部署的容器)
docker network rm 虚拟网络名称
Swarm虚拟网络使用三个端口,在每个节点开启防火墙端口
firewall-cmd --zone=public --add-port=2377/tcp --permanent
firewall-cmd --zone=public --add-port=7946/tcp --permanent
firewall-cmd --zone=public --add-port=7946/udp --permanent
firewall-cmd --zone=public --add-port=4789/tcp --permanent
firewall-cmd --zone=public --add-port=4789/udp --permanent
firewall-cmd --reload
service docker restart
数据卷
docker volume ls #数据卷列表
docker volume create 数据卷名 #创建数据卷
docker volume rm 数据卷名 #删除数据卷
docker volume prune #清除没有挂载的数据卷
docker volume inspect 数据卷名 #查看数据卷详情
下载PXC镜像并重命名
docker pull percona/percona-xtradb-cluster:5.7.21
docker tag percona/percona-xtradb-cluster:5.7.21 pxc
docker rmi percona/percona-xtradb-cluster:5.7.21
创建主节点
docker run -d -p 9001:3306
-e MYSQL_ROOT_PASSWORD=abc123456 #root用户密码
-e CLUSTER_NAME=PXC1 #集群名称
-e XTRABACKUP_PASSWORD=abc123456 #数据同步密码
-v pnv1:/var/lib/mysql --privileged #数据卷,mysql数据存放到宿主机上,可读写
--name=pn1 --net=swarm_mysql
pxc
创建从节点
docker run -d -p 9001:3306
-e MYSQL_ROOT_PASSWORD=abc123456 #root用户密码
-e CLUSTER_NAME=PXC1 #集群名称
-e XTRABACKUP_PASSWORD=abc123456 #数据同步密码
-e CLUSTER_JOIN=pn1
-v pnv2:/var/lib/mysql --privileged #数据卷,mysql数据存放到数据卷上,宿主机上就能看到,可读写
--name=pn2 --net=swarm_mysql
pxc