当前位置:   article > 正文

2.1什么是容器_容器由几部分组成

容器由几部分组成

1.轻量级、可移植、自包含的软件打包技术,使应用程序可以在任何地方以相同的方式运行

2.容器由两部分组成:

(1)应用程序本身

(2)依赖:比如应用程序需要的库或其他软件容器在Host OS的用户空间中运行,与操作系统的其他进程隔离。

3.容器部署和启动速度更快、开销更小,也更容易迁移

  • 每个容器都有一个软件镜像,相当于集装箱中的货物。容器可以被创建、启动、关闭和销毁。和集装箱一样, Docker在执行这些操作时,并不关心容器里到底装的什么,它不管里面是Web Server,还是 Database.
  • 用户不需要关心容器最终会在哪里运行,因为哪里都可以运行。
  • 开发人员可以在笔记本上构建镜像并上传到 Registry,然后QA人员将镜像下载到物理或虚拟机做测试,最终容器会部署到生产环境。
  • 使用 Docker以及容器技术,我们可以快速构建一个应用服务器、一个消息中间件、一个数据库、一个持续集成环境。因为 Docker Hub上有我们能想到的几乎所有的镜像

2.2为什么需要容器

Docker为代码提供了一个基于容器的标准化运输系统。Docker可以将任何应用极其依赖打包成一个轻量级、可移植、自包含的容器。容器可以运行在几乎所有的操作系统上。

2.2.2Docker的特性

集装箱与Docker的特性对比

2.3容器是如何工作的

1.Docker架构

  • Docker采用的是Client/server架构
    • 客户端向服务器发送请求,服务器负责构建、运行和分发容器
    • 客户端和服务器可以运行在同一个Host上,客户端也可以通过socket或REST API与远程的服务器通信
  • Docker的核心组件包括:
    • Docker·客户端:Client
      • 最常用的是docker命令。
      • 也可以通过REST API与服务器通信
    • Docker服务器:Docker daemon
      • 以Linux后台服务的方试运行在Docker host上,负责创建、运行7监控容器,构建、存储镜像
      • 默认配置下,Docker daemon只能响应来自本地Host的客户端请求
        • 如果要允许远程客户端请求,需要在配置文件中打开TCP监听

然后重启docker daemon

服务器IP为192.168.153.130 客户端在命令行加上-H参数,即可与远程服务器通信,info子命令用户查看Docker服务器信息

  • Docker镜像:Image
    • 可以将Docker镜像看成只读模板,通过它可以创建Docker容器
    • 镜像有多种生成方法
      • 从无到有创建
      • 下载并使用别人创建好的
      • 在现有镜像上创建新的镜像
    • 可以将镜像的内容和创建步骤描述在一个文本文件中,这个文件被称为Dockerfile,通过执行doker build <docker-file>命令可以创建出Docker镜像
  • Registry
    • 存放Docker镜像的仓库,分为私有和公有两种
    • docker pull命令可以从Registry下载镜像
    • docker run命令则是先下载镜像(如果本地没有),然后启动容器

  • -d:让容器在后台运行。
  • -P:将容器内部使用的网络端口随机映射到我们使用的主机上。
  • docker images可以查看已下载的镜像

  • 各个选项说明:
    • REPOSITORY:表示镜像的仓库源
    • TAG:镜像的标签    (一仓库源可以有多个 TAG,代表这个仓库源的不同个版本)
    • IMAGE ID:镜像ID
    • CREATED:镜像创建时间
    • SIZE:镜像大小

 

  • docker ps或docker container ls显示容器正在运行

  • Docker容器:Container
    • 就是Docker镜像的运行实例
    • 用户可以通过CLI(Docker)或是API启动、停止、移动或删除容器。可以这么认为,对于应用软件,镜像是软件生命周期的构建和打包阶段,而容器则是启动和运行阶段。
       
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/740247
推荐阅读
相关标签
  

闽ICP备14008679号