# 一.搭建环境
# 1.环境依赖
由于 Docker 的容器隔离依赖于 Linux 内核中的相关支持,所以使用 Docker 首先需要确保安装机器的 Linux kernel 中包含 Docker 所需要使用的特性
操作系统 | 支持的系统版本 |
---|---|
CentOS | CentOS 7 |
Debian | Debian Wheezy 7.7 (LTS) Debian Jessie 8 (LTS) Debian Stretch 9 Debian Buster 10 |
Fedora | Fedora 26 Fedora 27 |
Ubuntu | Ubuntu Trusty 14.04 (LTS) Ubuntu Ubuntu Xenial 16.04 (LTS) Ubuntu Ubuntu Artful 17.10 |
# 2.安装 Docker
# 2.1 CentOS
yum install yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce
systemctl enable docker
systemctl start docker
2
3
4
5
# 2.2 Debian
apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
apt-get update
apt-get install docker-ce
systemctl enable docker
systemctl start docker
2
3
4
5
6
7
# 2.3 Fedora
dnf -y install dnf-plugins-core
dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
dnf install docker-ce
systemctl enable docker
systemctl start docker
2
3
4
5
# 2.4 Ubuntu
apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
apt-get update
apt-get install docker-ce
systemctl enable docker
systemctl start docker
2
3
4
5
6
7
# 3.使用 Docker
在安装 Docker 完成之后,我们需要先启动 docker daemon 使其能够为我们提供 Docker 服务,这样我们才能正常使用 Docker。
在我们通过软件包的形式安装 Docker Engine 时,安装包已经为我们在 Linux 系统中注册了一个 Docker 服务,所以我们不需要直接启动 docker daemon 对应的 dockerd
这个程序,而是直接启动 Docker 服务即可。
systemctl start docker
当然,为了实现 Docker 服务开机自启动,我们还可以运行这个命令:
systemctl enable docker
# 3.1 docker version
在 Docker 服务启动之后,我们先来尝试一个最简单的查看 Docker 版本的命令:docker version
。
docker version
Client:
Version: 18.06.1-ce
API version: 1.38
Go version: go1.10.3
Git commit: e68fc7a
Built: Tue Aug 21 17:23:03 2018
OS/Arch: linux/amd64
Experimental: false
Server:
Engine:
Version: 18.06.1-ce
API version: 1.38 (minimum version 1.12)
Go version: go1.10.3
Git commit: e68fc7a
Built: Tue Aug 21 17:25:29 2018
OS/Arch: linux/amd64
Experimental: false
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
这个命令能够显示 Docker C/S 结构中的服务端 ( docker daemon ) 和客户端 ( docker CLI ) 相关的版本信息。在默认情况下,docker CLI 连接的是本机运行的 docker daemon ,由于 docker daemon 和 docker CLI 通过 RESTful 接口进行了解耦,所以我们也能修改配置用于操作其他机器上运行的 docker daemon 。
# 3.2 docker info
如果想要了解 Docker Engine 更多相关的信息,我们还可以通过 docker info
这个命令。
docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 18.06.0-ce
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
## ......
Live Restore Enabled: false
2
3
4
5
6
7
8
9
10
11
12
13
14
15
在 docker info
这条命令的结果中,我们可以看到正在运行的 Docker Engine 实例中运行的容器数量,存储的引擎等等信息
# 4.配置国内镜像源
在 Linux 环境下,我们可以通过修改 /etc/docker/daemon.json
( 如果文件不存在,你可以直接创建它 ) 这个 Docker 服务的配置文件达到效果。
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
2
3
4
5
重新启动 docker daemon
systemctl restart docker
查阅当前注册的镜像源列表
docker info
## ......
Registry Mirrors:
https://registry.docker-cn.com/
## ......
2
3
4
5