10分钟了解Docker,运维和开发视角有什么不同?
本文从下面两部分内容讲解Docker。
- 运维(Ops)视角。
- 开发(Dev)视角。
在运维视角中,主要包括下载镜像、运行新的容器、登录新容器、在容器内运行命令,以及销毁容器。
在开发视角中,更多关注与应用相关的内容。《深入浅出Docker内》会从GitHub拉取一些应用代码,解释其中的Dockerfile,将应用容器化,并在容器中运行它们。
通过上面两部分内容,你可以从整体上理解Docker究竟是什么,以及主要组件之间是如何相互配合的。推荐读者对开发和运维两部分内容都要阅读。
1.1 运维视角
当读者安装Docker的时候,会涉及两个主要组件:Docker客户端和Docker daemon(有时也被称为“服务端”或者“引擎”)。
daemon实现了Docker引擎的API。
使用Linux默认安装时,客户端与daemon之间的通信是通过本地IPC/UNIX Socket完成的(/var/run/docker.sock
);在Windows上是通过名为npipe:////./pipe/docker_engine
的管道(pipe)完成的。读者可以使用docker version
命令来检测客户端和服务端是否都已经成功运行,并且可以互相通信。
1> docker version
2Client:
3 Version: 18.01.0-ce
4 API version: 1.35
5 Go version: go1.9.2
6 Git commit: 03596f5
7 Built: Wed Jan 10 20:11:05 2018
8 OS/Arch: linux/amd64
9 Experimental: false
10 Orchestrator: swarm
11
12Server:
13 Engine:
14 Version: 18.01.0-ce
15 API version: 1.35 (minimum version 1.12)
16 Go version: go1.9.2
17 Git commit: 03596f5
18 Built: Wed Jan 10 20:09:37 2018
19 OS/Arch: linux/amd64
20 Experimental: false
相关文章