常用
yum -y install ntp ntpdate
ntpdate cn.pool.ntp.org
# 清空所有
docker rm -f $(docker ps -aq) && docker rmi -f $(docker images -aq)
# 镜像名称 -> 容器
docker run -d --name nginx01 -p 3344:80 nginx
# 退出
exit
# 容器不退出
ctrl + P + Q
#进入容器
# 方式一
docker exec -it 容器id /bin/bash
# 方式二 进入容器正在执行终端
docker attach 容器id
# 删除容器卷
docker volume ls
docker volume rm my-vol
docker volume rm $(docker volume ls -q)
Docker Compose
安装
# 下载
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# 赋权限
chmod +x /usr/local/bin/docker-compose
# 查看版本
docker-compose version
#
docker-compose build --no-cache
docker-compose up
docker-compose up -d
docker-compose up -d --build
docker swarm
# 10.211.55.101上执行
# 1.初始化节点
docker swarm init --advertise-addr 10.211.55.101
# docker swarm init 其他节点加入101节点
# 2.在manager节点上生成命令
docker swarm join-token manager
docker swarm join-token worker
# 在10.211.55.102上执行2步骤生成的命令以加入
docker swarm join --token SWMTKN-1-2nxe1dxzbnfgmmfpk8ix1m4lhyylubjk7fhr924r0noqnvbnmc-25vresy11gwlkfjk343kfa648 10.211.55.101:2377
# 3.在manager查看集群情况
docker node ls
# 4.节点移除
docker swarm leave
#删除指定节点 (管理节点上操作
docker node rm g36lvv23ypjd8v7ovlst2n3yt
# 管理节点,解散集群
docker swarm leave --force
弹性、动态节点上下线
docker service --help
# 在docker swarm上让这几台连成
# 创建服务,即弹性容器,类似于docker run
docker service create -p 8888:80 --name my-nginx nginx
# 查看某服务
docker service ps my-nginx
# 列出节点服务
docker service ls
# 查看服务具体内容
docker service inspect my-nginx
# 创建三个副本,此时自动分配给另外三台作为副本
docker service update --replicas 3 my-nginx
# 和上面作用相同
docker service scale my-nginx=2
# 移除服务
docker service rm my-nginx
Docker Swarm 配置文件存储
在Docker Swarm已启动基础上
- 创建本地文件
vim site.conf
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
- 上传至集群
# docker config create docker配置文件名 本地配置文件
docker config create site.conf site.conf
# 查看文件列表
docker config ls
docker config inspect [容器名称] --pretty
- 管理节点:创建一个Nginx并应用这个配置
# 服务器8080 -> docker80
docker service create \
--name nginx \
--config source=site.conf,target=/etc/nginx/conf.d/site.conf \
--publish 8080:80 \
nginx:latest
# 创建服务
docker service create \
# 服务名
--name nginx \
#添加配置文件,source=docker配置文件,target=配置文件路径
--config source=site.conf,target=/etc/nginx/conf.d/site.conf \
# 暴露端口
--publish 8080:80 \
# 使用镜像
nginx:latest
- 容器内查看
docker exec -it [容器名] /bin/bash
cat /etc/nginx/conf.d/site.conf