Docker 学习文档(知识结构整理)

2020-06-17 06:57:09易采站长站整理

ReferenceDocker Getting Start: Related KnowledgeDocker 介绍以及其相关术语、底层原理和技术

1.6 资源配额「cgroups」

cgroups 实现了对资源的配额和度量。 cgroups 的使用非常简单,提供类似文件的接口,在 /cgroup 目录下新建一个文件夹即可新建一个 group,在此文件夹中新建 task 文件,并将 pid 写入该文件,即可实现对该进程的资源控制。具体的资源配置选项可以在该文件夹中新建子 subsystem ,{子系统前缀}.{资源项} 是典型的配置方法, 如 memory.usageinbytes 就定义了该 group 在 subsystem memory 中的一个内存限制选项。 另外,cgroups 中的 subsystem 可以随意组合,一个 subsystem 可以在不同的 group 中,也可以一个 group 包含多个 subsystem – 也就是说一个 subsystem。

memory内存相关的限制

cpu在 cgroup 中,并不能像硬件虚拟化方案一样能够定义 CPU 能力,但是能够定义 CPU 轮转的优先级,因此具有较高 CPU 优先级的进程会更可能得到 CPU 运算。 通过将参数写入 cpu.shares ,即可定义改 cgroup 的 CPU 优先级 – 这里是一个相对权重,而非绝对值blkioblock IO 相关的统计和限制,byte/operation 统计和限制 (IOPS 等),读写速度限制等,但是这里主要统计的都是同步 IO

devices设备权限限制

参考文档:how to use cgroup

二、Docker 安装

docker 的相关安装方法这里不作介绍,具体安装参考 官档

获取当前 docker 版本


$ sudo docker version
Client version: 1.3.2
Client API version: 1.15
Go version (client): go1.3.3
Git commit (client): 39fa2fa/1.3.2
OS/Arch (client): linux/amd64
Server version: 1.3.2
Server API version: 1.15
Go version (server): go1.3.3
Git commit (server): 39fa2fa/1.3.2

三、Docker 基础用法

Docker HUB : Docker镜像首页,包括官方镜像和其它公开镜像

因为国情的原因,国内下载 Docker HUB 官方的相关镜像比较慢,可以使用 docker.cn 镜像,镜像保持和官方一致,关键是速度块,推荐使用。

3.1 Search images

$ sudo docker search ubuntu

3.2 Pull images

$ sudo docker pull ubuntu # 获取 ubuntu 官方镜像 $ sudo docker images # 查看当前镜像列表

3.3 Running an interactive shell

$ sudo docker run -i -t ubuntu:14.04 /bin/bash

docker run – 运行一个容器-t – 分配一个(伪)tty (link is external)-i – 交互模式 (so we can interact with it)ubuntu:14.04 – 使用 ubuntu 基础镜像 14.04/bin/bash – 运行命令 bash shell

注: ubuntu 会有多个版本,通过指定 tag 来启动特定的版本 :[tag]