Docker 相关概念总览

Docker 概念总览

Docker Engine

Docker 引擎

Docker architecture

Docker 架构

Docker daemon

Docker 守护进程,dockerd 命令

Docker client

Docker 客户端,docker 命令

Docker registries

Docker 仓库

Docker objects

Docker 对象

IMAGES

镜像

CONTAINERS

容器

SERVICES

服务

Services allow you to scale containers across multiple Docker daemons, which all work together as a swarm with multiple managers and workers. Each member of a swarm is a Docker daemon, and the daemons all communicate using the Docker API. A service allows you to define the desired state, such as the number of replicas of the service that must be available at any given time. By default, the service is load-balanced across all worker nodes. To the consumer, the Docker service appears to be a single application. Docker Engine supports swarm mode in Docker 1.12 and higher.

底层技术

Docker is written in Go and takes advantage of several features of the Linux kernel to deliver its functionality.

Namespaces

命名空间

Docker uses a technology called namespaces to provide the isolated workspace called the container. When you run a container, Docker creates a set of namespaces for that container.

These namespaces provide a layer of isolation. Each aspect of a container runs in a separate namespace and its access is limited to that namespace.

Docker Engine uses namespaces such as the following on Linux:

  • The pid namespace: Process isolation (PID: Process ID).
  • The net namespace: Managing network interfaces (NET: Networking).
  • The ipc namespace: Managing access to IPC resources (IPC: InterProcess Communication).
  • The mnt namespace: Managing filesystem mount points (MNT: Mount).
  • The uts namespace: Isolating kernel and version identifiers. (UTS: Unix Timesharing System).

Control groups

控制组 cgroups

Docker Engine on Linux also relies on another technology called control groups (cgroups). A cgroup limits an application to a specific set of resources. Control groups allow Docker Engine to share available hardware resources to containers and optionally enforce limits and constraints. For example, you can limit the memory available to a specific container.

Union file systems

联合文件系统

Union file systems, or UnionFS, are file systems that operate by creating layers, making them very lightweight and fast. Docker Engine uses UnionFS to provide the building blocks for containers. Docker Engine can use multiple UnionFS variants, including AUFS, btrfs, vfs, and DeviceMapper.

Container format

容器格式

Docker Engine combines the namespaces, control groups, and UnionFS into a wrapper called a container format. The default container format is libcontainer. In the future, Docker may support other container formats by integrating with technologies such as BSD Jails or Solaris Zones.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏智能计算时代

OpenStack in containers

image.png 目前OpenStack官方项目里,有两个是通过容器来部署OpenStack,Rackspace主导的OpenStack-ansible 和K...

4037
来自专栏ChaMd5安全团队

pwnhub年前最后一战——“血月归来”writeup

一共两题,一题是固件逆向,一题是pwn。 key–逆向 这是一个嵌入式固件的逆向。 固件逆向,第一要做的就是确定片型和板型。 确定片型可以知道硬件资源,通用寄存...

4118
来自专栏MoeLove

Docker 实战和基础架构

Maybe you will see a few extra lines if your Docker install is brand new.

1346
来自专栏积累沉淀

ie8和chrome获取上传图片的宽度和高度等尺寸

测试后可用 <html> <head>     <title>测试</title>     <meta chars...

3818
来自专栏牛肉圆粉不加葱

ResourceManager HA无法连接Spark TrackUi现象解决方案

在对ResourceManager做了基于Zookeeper的HA后, 在YARN集群上执行Spark application后, 打开Spark Applic...

1232
来自专栏从零开始的linux

Dockerfile

Dockerfile ############################################################ # Dock...

3515
来自专栏琯琯博客

docker-resources资源汇集相关项目博文

docker资源汇总。英文版本链接 资源汇集 书籍 第一本Docker书 (7.4分) Docker —— 从入门到实践 (内容一般) The Docker B...

5147
来自专栏前端萌媛的成长之路

Setting up your own Ghost theme

1512
来自专栏程序员同行者

Docker部署Vue 工程包

这样前端工程镜像就build好了,可以执行docker run -d -p9528:9528 dist:v0.1启动

1412
来自专栏Golang语言社区

使用Docker和热加载运行Go API

This is a quick discussion of how to set up a local development environment for ...

1301

扫码关注云+社区

领取腾讯云代金券