Docker安装与使用

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker的三剑客

Machine是在虚拟机上运行docker,通过machine可以快速在虚拟机里面部署docker,因此如果是非linux环境,实际是启动一个虚拟机,然后远程上去的,适合学习和测试。
Compose是docker自带的编排工具,最初处理多个容器在一台主机上的启动和依赖。
Swarm是自带的集群管理工具,通过它可以把多个docker虚拟成一个集群,同时支持原生API,正因为如此compose结合swarm后就可以跨主机编排。不过swarm还是比较新的集群管理工具,稳定性还有待提高。国内的话,我们ghostcloud一直是致力于打造最专业的容器云平台,会在后续陆续支持compose和swarm.
Docker的下载安装

点击以下链接下载 Stable 或 Edge 版本的 Docker for Mac。 Stable版官方说明是一个季度更新一次,Edge版官方说明是一个月一次。

Docker安装与使用

安装完后,点击顶部状态栏中的鲸鱼图标会弹出操作菜单。

Docker安装与使用

启动终端后,通过命令可以检查安装后的 Docker 版本。

localhost:~ zhangruilong$ docker --version

Docker version 18.03.1-ce, build 9ee9f40

通过 docker info 来查看配置

localhost:~ zhangruilong$ docker info

Containers: 0

 Running: 0

 Paused: 0

 Stopped: 0

Images: 0

Server Version: 18.03.1-ce

Storage Driver: overlay2

 Backing Filesystem: extfs

 Supports d_type: true

 Native Overlay Diff: true

Logging Driver: json-file

Cgroup Driver: cgroupfs

Plugins:

 Volume: local

 Network: bridge host ipvlan macvlan null overlay

 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog

Swarm: inactive

Runtimes: runc

Default Runtime: runc

Init Binary: docker-init

containerd version: 773c489c9c1b21a6d78b5c538cd395416ec50f88

runc version: 4fc53a81fb7c994640722ac585fa9ca548971871

init version: 949e6fa

Security Options:

 seccomp

  Profile: default

Kernel Version: 4.9.87-linuxkit-aufs

Operating System: Docker for Mac

OSType: linux

Architecture: x86_64

CPUs: 2

Total Memory: 1.952GiB

Name: linuxkit-025000000001

ID: QI46:7A5H:B2KR:M2IV:SXZG:4P2G:ZXU7:SJ73:MPHQ:JJNL:HIJN:DN4B

Docker Root Dir: /var/lib/docker

Debug Mode (client): false

Debug Mode (server): true

 File Descriptors: 21

 Goroutines: 39

 System Time: 2018-05-02T02:28:36.382682998Z

 EventsListeners: 2

HTTP Proxy: docker.for.mac.http.internal:3128

HTTPS Proxy: docker.for.mac.http.internal:3129

Registry: https://index.docker.io/v1/

Labels:

Experimental: true

Insecure Registries:

 127.0.0.0/8

Registry Mirrors:

 http://hub-mirror.c.163.com/

Live Restore Enabled: false