docker 离线安装18-03centos7.5

基础配置Centos7系统,关闭防火墙、selinux

systemctl stop firewalld.service

rpm -ivh docker-ce-18.03.0.ce-1.el7.centos.x86_64.rpm

rpm -ivh pigz-2.3.3-1.el7.centos.x86_64.rpm

rpm -ivh container-selinux-2.55-1.el7.noarch.rpm

systemctl start docker.service        启动docker

systemctl enable docker.service     设置开机自启

systemctl enable docker.service && systemctl start docker.service

docker info    查看安装版本信息

拷贝centos7.tar镜像包到/opt/

docker load < centos7.tar   

docker images  查看镜像

docker rmi image 删除镜像(镜像名)

docker rmi -f image 删除镜像(镜像id)

docker stop 容器名 (停止)

docker rm   容器名  (删除)

vim Dockerfile       写dockerfile

docker tag e934aafc2206 centos:server  为镜像改名标签

docker image rm centos:latest

docker build -t nginx:server .      生成镜像  Nginx自定义server标签名
docker run -d -p 81:8080 nginx:server  启动镜像 81暴露端口号8080dockerfile定义端口号   镜像名:标签

docker ps       查看运行容器    -a所有

docker exec -it reverent_murdock /bin/bash   进入容器   reverent_murdock容器名

exit  退出

docker logs 镜像名 –f    查看容器日志

docker save 镜像ID > centos.tar  打包镜像

docer  load < 打包镜像.tar

docker history ee1acd0c2bc0 --no-trunc    镜像构建过程

docker network create yzys            docker创建单机网络

docker network create -d overlay yzys     docker创建集群网络

 

docker stack deploy -c ywjgpt.yml ywjgpt_web

docker stack rm ywjg_web

docker service logs -f ywjgpt_web

docker-swarm   起服务

 

docker swarm init  启动集群swarm服务

将工作节点加入docker集群   在每个节点执行

Docker swarm join --token SWMTKN-1-3jszgab1gx8pcole9zgtrrqyjjq8bizxixnqj1fo6hv8bllpia-7qhik8jc0096x6974teptt65j 192.168.44.54:2377

查看集群信息

Docker  node  ls

Docker  stack ls     列出现有堆栈

Docker  stack  ps    列出堆栈中任务

Docker  stack  rm    删除一个或多个任务

Docker  stack services  列出堆栈中的服务

Docker  stack deploy    部署新的堆栈 

双主节点设置

docker swarm join

docker swarm join-token manager

docker swarm join --token SWMTKN-1-4h38kxard79ujmelkie1z7pw7xx30s3pgtjnxafm1ltn46imdg-eiksx7lqydqvt3m7n8jc45n2y 192.168.31.230:2377

批量删除Docker中已经停止的容器

 #显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID,

 docker ps -a|grep Exited|awk '{print $1}'

#查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器

docker rm `docker ps -a|grep Exited|awk '{print $1}'`

 

docker swarm 问题:"Error response from daemon: context deadline exceeded"

worker 节点无法强制退出 docker swarm 集群

# docker swarm leave --force

Error response from daemon: context deadline exceeded

systemctl stop docker.service

rm -rf /var/lib/docker/swarm

systemctl start  docker.service

docker swarm leave -f

 

 

Docker swarm集群节点管理

一、 docker swarm初始化 新增

docker swarm init
docker swarm 增加master节点
docker swarm join-token manager
docker swarm 增加worker节点
docker swarm join-token worker

将打印出的命令语句在新节点上执行即可

二、查看集群节点

docker node ls
MANAGER STATUS列
Leader : master 节点
Reachable:可替代master
空:      worker节点
Reachable: 不能与其他管理器通信的管理器通信,不能替代master

三、docker swarm删除、降级节点

降级
docker node demote 节点id 降级为worker节点
删除
docker swarm leave (要删除的节点上执行)
停用,该节点上的容器会迁移到其他节点
docker node update --availability drain 节点id
删除节点前,需先停该节点的docker服务
systemctl stop docker.service
docker node rm 节点id

posted @   moxunjy  阅读(351)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示