docker是什么(Docker有什么优势)

2022-09-26 17:07

Docker是一个开源容器引擎,将应用以及依赖打包到一个可移植的镜像中,并且将配置脚本化、自动化,实现一键部署、虚拟化和集群化,快捷高效交付应用。

一,Docker核心技术

Docker核心概念:

1)镜像Image,应用和依赖打包生成的文件。

2)容器Container,运行应用的实例。

3)仓库Repository,存放镜像文件的地方。

Docker-compose资源编排,将多个服务和对应的容器组织成为一个应用系统,声明在docker-compose.yml文件中,将这些服务作为一个整体来创建和启动。

Docker Swarm集群管理工具,统一管理组织多个Docker节点,支持动态扩容等特性,集群化部署和管理应用系统,和Kubernetes(k8s)相比,更加轻量,适合较小规模。


二,Dockerfile配置是核心

Dockerfile声明应用和依赖,比如拉取代码、添加运行库、设置数据卷、配置环境变量,等等。


三,Docker镜像构建

1,本地构建

Dockerfile完成后,可以在本机直接运行docker build命令。

2,云服务自动构建

代码托管在Git,配置阿里云容器镜像服务,在提交代码时,自动触发构建Docker镜像。


3,优化构建速度

合理的拆分Dockerfile,可以提高构建速度,比如将很少变化的部分独立出来,配置Dockerfile_base,然后Dockerfile的基础镜像引用它。


四,一键部署

配置docker-compose.yml文件,声明需要创建的服务、镜像、资源,比如环境变量、端口,等等,一键启动和运行应用系统。

需要集群化部署到多个Docker节点时,使用Docker Swarm或者Kubernetes(k8s)管理维护服务器节点,可以增加必要的控制参数,比如label, role,指定需要部署运行的容器在特定节点上。

我是工作多年的Web应用架构师,陆续发布关于软件开发方面的文章,欢迎关注我,了解更多IT专业知识。

上一篇:打印机出现感叹号无法打印怎么处理(打印机故障灯亮了怎么办)
下一篇:电机扭矩计算公式(怎么计算液压马达输出的转矩和功率)
图文资讯
返回顶部小火箭