Docker快速印象

115 阅读2分钟

什么是Docker

Docker是一个开源的应用容器引擎,通过Docker,管理人员可以方便地对容器进行管理。

Docker基于Go语言开发,遵从Apache2.0开源协议。

Docker提供了对容器镜像的打包、封装功能。故,开发者可以将开发的应用系统以及依赖打包,放到一个轻量级、可移植的容器中,接着发不到任何的Linux机器上。

得益于Docker统一了开发、测试和部署的环境和流程,极大地减少了运维成本。

Docker使用沙箱机制,容器之间不会有任何接口存在。

Docker的组成架构

Docker是一个典型的C/S(客户端/服务器)架构。

image.png

用户通过客户端与主机进行交互。主机端负责构建、运行和分发Docker镜像。客户端和主机可在同一台机器上,也可在不同机器上,两者通过接口进行通信。

组成部分:

  1. 镜像:镜像可以说是容器的模板。如一个镜像可以包含一个完整的操作系统。

    • 镜像的作用可以用创建容器。镜像与容器之间的关系就是模板和具体实例的关系。一个镜像可创建多个容器。
  2. 容器:容器是独立运行的一个或一组应用,是从镜像创建的运行实例。容器可以被创建、启动、停止、删除、暂停等。

  3. 仓库:仓库可看成一个代码控制中心,用来保存镜像。

应用场景

  1. 应用隔离:Docker通过容器技术实现了操作系统级别的虚拟化,让应用和服务能在隔离的环境中运行。这提供了一种轻量级的、可重复的、便携式的应用隔离解决方案,使得开发者和系统管理员能够更轻松地管理和维护应用程序。
  2. 持续集成与部署(CI/CD):Docker与CI/CD工具结合使用,可以自动化代码构建、测试和部署的过程。这可以显著提高软件开发的效率和质量,减少手动操作和错误。
  3. 简化配置:应用的部署,只需以镜像为模板创建容器即可。
  4. 实现开发环境和生产环境的统一