一、Docker-swarm介绍 docker-swarm是docker官方提供的docker集群模式,如果你有多台docker进行管理可选择这种模式,docker-swarm是内置在docker中的不需要部署其他组件,部署完docker即可正常使用。一个swarm由多个Docker主机组成,这些主机在swarm模式下运行并充当管理节点和node节点。可以同时指定docker节点为管理节点和node节点,创建服务时,可以设置服务的副本数、网络和存储资源。服务可向外部公开端口,swarm会维护服务的状态,如果node节点变成不可用,swarm会调度服务的容器到其他正常的节点。服务与独立容器不同服务可进行修改配置,包括网络和卷无需重新启动服务,swarm会进行滚动更新。当docker在swarm模式下运行时,还是可以使用传统方法进行独立容器的创建。 官方文档:https://docs.docker.com/engine/swarm/ 1.1 Docker-swarm安装 docker swarm不需要任何组件,安装完docker就可以直接使用 1.安装docker-ce #使用任何方式都可....
docker-compose
一、docker-compose 当在宿主机启动较多的容器时候,如果都是手动操作会觉得比较麻烦而且容器出错,这个时候推荐使用docker单机编排工具docker-compose,docker-compose 是 docker 容器的一种单机编排服务,docker-compose 是一个管理多个容器的工具,比如可以解决容器之间的依赖关系,就像启动一个 nginx 前端服务的时候会调用后端的tomcat,那就得先启动tomcat,但是启动tomcat 容器还需要依赖数据库,那就还得先启动数据库,docker-compose 就可以解决这样的嵌套依赖关系,其完全可以替代docker run对容器进行创建、启动和停止。 docker-compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排,docker-compose将所管理的容器分为三层,分别是工程 (project),服务(service)以及容器(container)。 github 地址: https://github.com/docker/compose 以下演示使用docker-compose版本为....
containerd服务
一、Containerd 简介 很久以前,Docker 强势崛起,以“镜像”这个大招席卷全球,对其他容器技术进行致命的降维打击,使其毫无招架之力,就连 Google 也不例外。Google 为了不被拍死在沙滩上,被迫拉下脸面(当然,跪舔是不可能的),希望 Docker 公司和自己联合推进一个开源的容器运行时作为 Docker 的核心依赖,不然就走着瞧。Docker 公司觉得自己的智商被侮辱了,走着瞧就走着瞧,谁怕谁啊! 很明显,Docker 公司的这个决策断送了自己的大好前程,造成了今天的悲剧。 紧接着,Google 联合 Red Hat、IBM 等几位巨佬连哄带骗忽悠 Docker 公司将 libcontainer 捐给中立的社区(OCI,Open Container Intiative),并改名为 runc,不留一点 Docker 公司的痕迹~~ 这还不够,为了彻底扭转 Docker 一家独大的局面,几位大佬又合伙成立了一个基金会叫 CNCF(Cloud Native Computing Fundation),这个名字想必大家都很熟了,我就不详细介绍了。CNCF 的目标很明确,既然....
Docker镜像详解
一、Docker镜像介绍 Docker容器镜像是Docker中的一个重要概念,它是一个轻量级、独立运行的软件包,包含了运行应用所需的一切:代码、运行时环境、系统工具、系统库等。Docker容器镜像是由一个或多个只读的文件系统层组成的,每个文件系统层都包含了一个或多个文件或目录的变更。这种分层的结构使得容器镜像可以高效地共享和复用。Docker容器镜像可以通过Dockerfile文件定义,Dockerfile是一个文本文件,包含了一系列的指令,用于构建容器镜像。通过运行Dockerfile中的指令,Docker可以自动化地构建容器镜像,并将其保存为一个可用的镜像文件。Docker容器镜像可以通过Docker Hub等镜像仓库进行分享和分发。用户可以从镜像仓库中下载所需的镜像,然后在本地运行该镜像创建一个容器实例。总结来说,Docker容器镜像是一个轻量级、独立运行的软件包,包含了运行应用所需的一切。它可以通过Dockerfile文件定义,并可以通过镜像仓库进行分享和分发。 1.1 Docker容器镜像没有内核 从镜像大小上面来说,一个比较小的镜像只有十几MB,而内核文件需要一百多兆, 因....
镜像仓库
一、Docker Registry Registry是一个无状态的、高度可扩展的服务器端应用程序,它存储并允许您分发Docker映像。Registry是开源的。存储本身委托给驱动程序。默认存储驱动程序是本地posix文件系统,适用于开发或小型部署。还支持其他基于云的存储驱动程序,例如S3、Microsoft Azure、OpenStack Swift 和 Aliyun OSS。由于保护对镜像的访问至关重要,因此Registry原生支持TLS和基本身份验证。 1.1 部署Registry 由于官方提供的registry是一个镜像所以需要事先部署docker。 #拉取镜像 docker pull registry:latest #创建数据目录 mkdir /data/registry -p #启动服务 docker run -it -d -p 5000:5000 -v /data/registry:/var/lib/registry --restart=always --name registry registry:latest #测试 docker tag registry:latest....
Docker服务
一、Docker 简介 1.1 什么是容器技术 1.Docker是什么 首先 Docker是一个在 2013年开源的应用程序并且是一个基于 go 语言编写是一个开源的 PAAS 服务(Platform as a Service,平台即服务的缩写),go 语言是由 google 开发,docker 公司最早叫 dotCloud 后由于 Docker 开源后大受欢迎 就将公司改名为 Docker Inc,总部位于美国加州的旧金山,Docker 是基于 linux内核实现,Docker 最早采用 LXC 技术(LinuX Container 的简写,LXC 是 Linux 原生支持的容器技术,可以提供轻量级的虚拟化,可以说 docker 就是基于 LXC 发展起来的(0.1.5 (2013-04-17),提供 LXC 的高级封装,发展标准的配置方法), 而虚拟化技术 KVM(Kernel-based Virtual Machine) 基于模块实现,Docker 后改为自己研发并开源的 runc 技术运行容器(1.11.0 (2016-04-13)。 Docker now relies on ....