Skip to content

Docker网络模式学习 #29

@ghost

Description

Docker基本概念

Docker是对Linux容器的一种封装,提供简单易用的容器使用接口。不是对操作系统的模拟,而是对进程的隔离。Docker相比虚拟机具有启动快,占用资源少,体积少的优点。
image

  • 镜像是一个特殊的文件系统,提供容器运行时所需的程序、库、资源、配置文件及运行时的参数,它是分层存储的架构,构建镜像时,会一层层构建,前一层是后一层的基础,每一层构建完成后就不会再发生改变,这样有利于镜像的复用。
  • 通过 docker run image ,可以生成一个容器,容器在本质上是一个进程,但是每个容器都有自己的命名空间,容器之间是隔离的。容器运行时,以镜像为基础层,在其上创建容器存储层,这个容器存储层的生命周期和容器一样,容器消亡,容器存储层也会消亡,除非使用 docker commit 来生成一个新的镜像
  • Registry用来管理仓库,一个Docker Registry里有多个仓库,每个仓库里有多个tag,每个tag对应一个image文件。tag就好比是一个项目的版本。
  • volume用来做数据持久化

Docker网络模式

  • host模式
    Docker使用Linux的Namespaces技术来进行资源隔离,其中Network Namespace用来隔离网络。通常一个Docker容器会分配一个独立的Network Namespace。Host模式下容器不会获得一个独立的Network Namespace,而是和宿主机共用一个NetworkNamespace.rongqi不会虚拟出自己的网卡,ip等,而是使用宿主机的ip和端口
  • bridge模式
    bridge模式是Docker默认的网络设置,此模式会为每一个容器分配Network Namespace,设置IP等
  • container模式
    这个模式指定新创建的容器和一个指定的已存在的容器共享IP,端口范围等
  • none模式
    Docker容器有自己的Network Namespace,但是并不为docker容器进行任何网络配置,需要我们自己为Docker容器添加网卡、配置IP等

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions