Docker 架构
Docker 包罗三个基本概念:
- 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包罗了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
- 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的界说,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、停息等。
- 堆栈(Repository):堆栈可看成一个代码控制中心,用来生存镜像。
Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。
Docker 容器通过 Docker 镜像来创建。
容器与镜像的关系雷同于面向对象编程中的对象与类。
Docker面向对象容器对象镜像类
概念阐明 Docker 镜像(Images)
Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。
Docker 容器(Container)
容器是独立运行的一个或一组应用,是镜像运行时的实体。
Docker 客户端(Client)
Docker 客户端通过命令行大概其他工具使用 Docker SDK (SDK | Docker Docs) 与 Docker 的保卫历程通讯。
Docker 主机(Host)
一个物理大概虚拟的呆板用于实行 Docker 保卫历程和容器。
Docker Registry
Docker 堆栈用来生存镜像,可以理解为代码控制中的代码堆栈。
Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。
一个 Docker Registry 中可以包罗多个堆栈(Repository);每个堆栈可以包罗多个标签(Tag);每个标签对应一个镜像。
通常,一个堆栈会包罗同一个软件差别版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <堆栈名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。
Docker Machine
Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。
Ubuntu Docker 安装
Docker Engine-Community 支持以下的 Ubuntu 版本:
- Xenial 16.04 (LTS)
- 仿生 18.04 (LTS)
- 宇宙 18.10
- 迪斯科 19.04
- 其他更新的版本……
Docker Engine - Community 支持上 x86_64(或 amd64)armhf,arm64,s390x (IBM Z),和 ppc64le(IBM的Power)架构。
使用官方安装脚本自动安装
安装命令如下:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19"> curl </span><span style="color:#171c19">-</span><span style="color:#171c19">fsSL https</span><span style="color:#171c19">:</span><span style="color:#78877d">//test.docker.com -o test-docker.sh</span><span style="color:#171c19">
- sudo sh test</span><span style="color:#171c19">-</span><span style="color:#171c19">docker</span><span style="color:#171c19">.</span><span style="color:#171c19">sh</span></span></span>
复制代码 手动安装
卸载旧版本
Docker 的旧版本被称为 docker,docker.io 或 docker-engine 。如果已安装,请卸载它们:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ sudo apt</span><span style="color:#171c19">-</span><span style="color:#55859b">get</span><span style="color:#171c19"> remove docker docker</span><span style="color:#171c19">-</span><span style="color:#171c19">engine docker</span><span style="color:#171c19">.</span><span style="color:#171c19">io containerd runc</span></span></span>
复制代码 当前称为 Docker Engine-Community 软件包 docker-ce 。
安装 Docker Engine-Community,以下介绍两种方式。
使用 Docker 堆栈进行安装
在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 堆栈。之后,您可以从堆栈安装和更新 Docker 。
设置堆栈
更新 apt 包索引。
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ sudo apt</span><span style="color:#171c19">-</span><span style="color:#55859b">get</span><span style="color:#171c19"> update</span></span></span>
复制代码 安装 apt 依赖包,用于通过HTTPS来获取堆栈:
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common 添加 Docker 的官方 GPG 密钥:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ curl </span><span style="color:#171c19">-</span><span style="color:#171c19">fsSL https</span><span style="color:#171c19">:</span><span style="color:#78877d">//mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -</span></span></span>
复制代码 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 通过搜刮指纹的后8个字符,验证您现在是否拥有带有指纹的密钥。
$ sudo apt-key 指纹 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker 版本 (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S] 使用以下指令设置稳定版堆栈
$ sudo add-apt-repository \
“deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
$(lsb_release -cs) \
稳定” 安装 Docker Engine-Community
更新 apt 包索引。
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ sudo apt</span><span style="color:#171c19">-</span><span style="color:#55859b">get</span><span style="color:#171c19"> update</span></span></span>
复制代码 安装最新版本的 Docker Engine-Community 和 containerd ,大概转到下一步安装特定版本:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ sudo apt</span><span style="color:#171c19">-</span><span style="color:#55859b">get</span><span style="color:#171c19"> install docker</span><span style="color:#171c19">-</span><span style="color:#171c19">ce docker</span><span style="color:#171c19">-</span><span style="color:#171c19">ce</span><span style="color:#171c19">-</span><span style="color:#171c19">cli containerd</span><span style="color:#171c19">.</span><span style="color:#171c19">io</span></span></span>
复制代码 要安装特定版本的 Docker Engine-Community,请在堆栈中列出可用版本,然后选择一种安装。列出您的堆栈中可用的版本:
$ apt-cache 麦迪逊 docker-ce
docker-ce | 5:18.09.1~3-0~ubuntu-xenial |https:mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 软件包
docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https:mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 软件包
docker-ce | 18.06.1~ce~3-0~ubuntu | https:mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stableamd64 软件包
docker-ce | 18.06.0~ce~3-0~ubuntu | https:mirrors.ustc.edu.cn/docker-ce/linux/ubuntu xenial/stable amd64 软件包
... 使用第二列中的版本字符串安装特定版本,例如 5:18.09.1~3-0~ubuntu-xenial。
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ sudo apt</span><span style="color:#171c19">-</span><span style="color:#55859b">get</span><span style="color:#171c19"> install docker</span><span style="color:#171c19">-</span><span style="color:#171c19">ce</span><span style="color:#171c19">=<</span><span style="color:#171c19">VERSION_STRING</span><span style="color:#171c19">></span><span style="color:#171c19"> docker</span><span style="color:#171c19">-</span><span style="color:#171c19">ce</span><span style="color:#171c19">-</span><span style="color:#171c19">cli</span><span style="color:#171c19">=<</span><span style="color:#171c19">VERSION_STRING</span><span style="color:#171c19">></span><span style="color:#171c19"> containerd</span><span style="color:#171c19">.</span><span style="color:#171c19">io</span></span></span>
复制代码 测试 Docker 是否安装乐成,输入以下指令,打印出以下信息则安装乐成:
$ sudo docker run hello-world
在本地找不到映像 'hello-world:latest'
最新:从 library/hello-world
拉取 1b930d010525:拉取完整的摘要:sha256:c3b4ada4687bbaa170745b3e4dd8ac3f194ca95b2d0518b417fb47e5879d9b5f
状态:从 Docker 下载了 hello-world:latest
Hello 的更新映像!
此消息表明您的安装好像工作正常。
为了天生此消息,Docker 实行了以下步骤:
1. Docker 客户端接洽了 Docker 保卫程序。
2. Docker 保卫程序从 Docker Hub 拉取了 “hello-world” 镜像。
(amd64)
3.Docker 保卫程序从该映像创建了一个新容器,该容器运行天生您当前正在读取的输出的
可实行文件。
4. Docker 保卫程序将该输出流式传输到 Docker 客户端,后者将其
发送到您的终端。
要尝试更雄心壮志的事情,您可以通过以下方式运行 Ubuntu 容器:
$ docker run -it ubuntu bash
使用免费的 Docker ID
共享图像、自动化工作流程等:
https:hub.docker.com/
有关更多示例和想法,请访问:
https:docs.docker.com/get-started/ 使用 Shell 脚本进行安装
Docker 在 get.docker.com 和 test.docker.com 上提供了方便的脚本,用于将快速安装 Docker Engine-Community 的边缘版本和测试版本。脚本的源代码在 docker-install 堆栈中。不建议在生产环境中使用这些脚本,在使用它们之前,您应该了解潜伏的风险:
- 脚本需要运行 root 或具有 sudo 特权。因此,在运行脚本之前,应过细检查和考核脚本。
- 这些脚本尝试检测 Linux 发行版和版本,并为您配置软件包管理系统。别的,脚本不允许您自界说任何安装参数。从 Docker 的角度或您自己组织的准则和尺度的角度来看,这大概导致不支持的配置。
- 这些脚本将安装软件包管理器的所有依赖项和建议,而无需进行确认。这大概会安装大量软件包,具体取决于主机的当前配置。
- 该脚本未提供用于指定要安装哪个版本的 Docker 的选项,而是安装在 edge 通道中发布的最新版本。
- 如果已使用其他机制将 Docker 安装在主机上,请不要使用便捷脚本。
本示例使用 get.docker.com 上的脚本在 Linux 上安装最新版本的Docker Engine-Community。要安装最新的测试版本,请改用 test.docker.com。在下面的每个命令,取代每次出现 get 用 test。
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ curl </span><span style="color:#171c19">-</span><span style="color:#171c19">fsSL https</span><span style="color:#171c19">:</span><span style="color:#78877d">//get.docker.com -o get-docker.sh</span><span style="color:#171c19">
- $ sudo sh </span><span style="color:#55859b">get</span><span style="color:#171c19">-</span><span style="color:#171c19">docker</span><span style="color:#171c19">.</span><span style="color:#171c19">sh</span></span></span>
复制代码 如果要使用 Docker 作为非 root 用户,则应考虑使用雷同以下方式将用户添加到 docker 组:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ sudo usermod </span><span style="color:#171c19">-</span><span style="color:#171c19">aG docker your</span><span style="color:#171c19">-</span><span style="color:#171c19">user</span></span></span>
复制代码 卸载 docker
删除安装包:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">sudo apt</span><span style="color:#171c19">-</span><span style="color:#55859b">get</span><span style="color:#171c19"> purge docker</span><span style="color:#171c19">-</span><span style="color:#171c19">ce</span></span></span>
复制代码 删除镜像、容器、配置文件等内容:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">sudo rm </span><span style="color:#171c19">-</span><span style="color:#171c19">rf </span><span style="color:#171c19">/</span><span style="color:#55859b">var</span><span style="color:#171c19">/</span><span style="color:#171c19">lib</span><span style="color:#171c19">/</span><span style="color:#171c19">docker</span></span></span>
复制代码 Debian Docker 安装
Docker 支持以下的 Debian 版本:
- Buster 10
- Stretch 9 (stable) / Raspbian Stretch
Docker Engine-Community 在 x86_64(或 amd64 )armhf,和 arm64 体系结构上受支持。
使用官方安装脚本自动安装
安装命令如下:
- curl -fsSL https://get.docker.com -o get-docker.sh
- sudo sh get-docker.sh
复制代码 手动安装
1. 更新软件包
起首,更新现有的软件包和包缓存:
- sudo apt update
- sudo apt upgrade
复制代码 2. 安装依赖包
安装一些需要的依赖包,这些包允许 apt 使用 HTTPS 协议来访问 Docker 堆栈:
- sudo apt install apt-transport-https ca-certificates curl software-properties-common
复制代码 3. 添加 Docker 官方 GPG 密钥
使用下面的命令来添加 Docker 官方的 GPG 密钥:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
复制代码 4. 添加 Docker 堆栈
添加 Docker 官方的 APT 软件源:
- echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
复制代码 5. 更新 APT 软件包缓存
添加堆栈后,更新 APT 包索引:
确保你现在从 Docker 官方堆栈安装 Docker 而不是 Debian 默认堆栈:
- apt-cache policy docker-ce
复制代码 你应该看到它指向 https://download.docker.com/,确保这就是官方的 Docker 堆栈。
6. 安装 Docker
现在,你可以安装 Docker:
- sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
复制代码 7. 启动并验证 Docker
启动 Docker 并设置为开机自启:
- sudo systemctl start docker
- sudo systemctl enable docker
复制代码 你可以使用以下命令来验证 Docker 是否安装乐成:
运行以下测试命令确保 Docker 正常工作:
- sudo docker run hello-world
复制代码 卸载 docker
删除安装包:
- sudo apt-get purge docker-ce
复制代码 删除镜像、容器、配置文件等内容:
- sudo rm -rf /var/lib/docker
复制代码
CentOS Docker 安装
Docker 支持以下的 64 位 CentOS 版本:
- CentOS 7
- CentOS 8
- 更高版本...
使用官方安装脚本自动安装
安装命令如下:
- curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
复制代码 手动安装
卸载旧版本
较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖项。
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装 Docker Engine-Community
使用 Docker 堆栈进行安装
在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 堆栈。之后,您可以从堆栈安装和更新 Docker。
设置堆栈
安装所需的软件包。yum-utils 提供了 yum-config-manager ,而且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
$ sudo yum install -y yum-utils
使用以下命令来设置稳定的堆栈。
使用官方源地址(比力慢)
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
可以选择国内的一些源地址:
阿里云
$ sudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
清华大学源
$ sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
安装 Docker Engine-Community
安装最新版本的 Docker Engine-Community 和 containerd,大概转到下一步安装特定版本:
- $ sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
复制代码 如果提示您接受 GPG 密钥,请选是。
有多个 Docker 堆栈吗?
如果启用了多个 Docker 堆栈,则在未在 yum install 或 yum update 命令中指定版本的环境下,进行的安装或更新将始终安装最高版本,这大概不适合您的稳定性需求。
Docker 安装完默认未启动。而且已经创建好 docker 用户组,但该用户组下没有效户。
要安装特定版本的 Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
1、列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。
$ yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
2、通过其完整的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)不停到第一个连字符,并用连字符(-)分隔。例如:docker-ce-18.09.1。
- $ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
复制代码 启动 Docker。
- $ sudo systemctl start docker
复制代码 通过运行 hello-world 镜像来验证是否精确安装了 Docker Engine-Community 。
- $ sudo docker run hello-world
复制代码 卸载 docker
删除安装包:
删除镜像、容器、配置文件等内容:
Windows Docker 安装
Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境。
Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它实行的效率险些等同于所部署的 Linux 主机。
因此,Docker 必须部署在 Linux 内核的系统上。如果其他系统想部署 Docker 就必须安装一个虚拟 Linux 环境。
在 Windows 上部署 Docker 的方法都是先安装一个虚拟机,并在安装 Linux 系统的虚拟机中运行 Docker。
Win10 系统
Docker Desktop 是 Docker 在 Windows 10 和 macOS 操作系统上的官方安装方式,这个方法依然属于先在虚拟机中安装 Linux 然后再安装 Docker 的方法。
Docker Desktop 官方下载地址: Windows | Docker Docs
留意:此方法仅实用于 Windows 10 操作系统专业版、企业版、教育版和部分家庭版!
安装 Hyper-V
Hyper-V 是微软开发的虚拟机,雷同于 VMWare 或 VirtualBox,仅实用于 Windows 10。这是 Docker Desktop for Windows 所使用的虚拟机。
但是,这个虚拟机一旦启用,QEMU、VirtualBox 或 VMWare Workstation 15 及以下版本将无法使用!如果你必须在电脑上使用其他虚拟机(例如开发 Android 应用必须使用的模拟器),请不要使用 Hyper-V!
开启 Hyper-V
程序和功能
启用或关闭Windows功能
选中Hyper-V
也可以通过命令来启用 Hyper-V,请右键开始菜单并以管理员身份运行 PowerShell,实行以下命令:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#478c90">Enable</span><span style="color:#171c19">-</span><span style="color:#478c90">WindowsOptionalFeature</span> <span style="color:#171c19">-</span><span style="color:#478c90">Online</span> <span style="color:#171c19">-</span><span style="color:#478c90">FeatureName</span> <span style="color:#478c90">Microsoft</span><span style="color:#171c19">-</span><span style="color:#478c90">Hyper</span><span style="color:#171c19">-</span><span style="color:#171c19">V </span><span style="color:#171c19">-</span><span style="color:#478c90">All</span></span></span>
复制代码 安装 Docker Desktop for Windows
点击 Get started with Docker Desktop,并下载 Windows 的版本,如果你还没有登录,会要求注册登录:
运行安装文件
双击下载的 Docker for Windows Installer 安装文件,一起 Next,点击 Finish 完成安装。
安装完成后,Docker 会自动启动。通知栏上会出现个小鲸鱼的图标
,这表现 Docker 正在运行。
桌边也会出现三个图标,如下图所示:
我们可以在命令行实行 docker version 来检察版本号,docker run hello-world 来载入测试镜像测试。
如果没启动,你可以在 Windows 搜刮 Docker 来启动:
启动后,也可以在通知栏上看到小鲸鱼图标:
如果启动中碰到因 WSL 2 导致地错误,请安装 WSL 2。
安装之后,可以打开 PowerShell 并运行以下命令检测是否运行乐成:
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">docker run hello</span><span style="color:#171c19">-</span><span style="color:#171c19">world</span></span></span>
复制代码 在乐成运行之后应该会出现以下信息:
win7、win8 系统
win7、win8 等需要使用 docker toolbox 来安装,国内可以使用阿里云的镜像来下载,下载地址:docker-toolbox-windows-docker-toolbox安装包下载_开源镜像站-阿里云
安装比力简单,双击运行,点下一步即可,可以勾选自己需要的组件:
docker toolbox 是一个工具集,它重要包罗以下一些内容:
- Docker CLI - 客户端,用来运行 docker 引擎创建镜像和容器。
- Docker Machine - 可以让你在 Windows 的命令行中运行 docker 引擎命令。
- Docker Compose - 用来运行 docker-compose 命令。
- Kitematic - 这是 Docker 的 GUI 版本。
- Docker QuickStart shell - 这是一个已经配置好Docker的命令行环境。
- Oracle VM Virtualbox - 虚拟机。
下载完成之后直接点击安装,安装乐成后,桌边会出现三个图标,如下图所示:
点击 Docker QuickStart 图标来启动 Docker Toolbox 终端。
如果系统表现 User Account Control 窗口来运行 VirtualBox 修改你的电脑,选择 Yes。
$符号那里可以输入以下命令来实行。
- <span style="background-color:#ecf4ee"><span style="color:#333333"><span style="color:#171c19">$ docker run hello</span><span style="color:#171c19">-</span><span style="color:#171c19">world
- </span><span style="color:#478c90">Unable</span><span style="color:#171c19"> to find image </span><span style="color:#489963">'hello-world:latest'</span><span style="color:#171c19"> locally
- </span><span style="color:#478c90">Pulling</span><span style="color:#171c19"> repository hello</span><span style="color:#171c19">-</span><span style="color:#171c19">world
- </span><span style="color:#9f713c">91c95931e552</span><span style="color:#171c19">:</span> <span style="color:#478c90">Download</span><span style="color:#171c19"> complete
- a8219747be10</span><span style="color:#171c19">:</span> <span style="color:#478c90">Download</span><span style="color:#171c19"> complete
- </span><span style="color:#478c90">Status</span><span style="color:#171c19">:</span> <span style="color:#478c90">Downloaded</span><span style="color:#171c19"> newer image </span><span style="color:#55859b">for</span><span style="color:#171c19"> hello</span><span style="color:#171c19">-</span><span style="color:#171c19">world</span><span style="color:#171c19">:</span><span style="color:#171c19">latest
- </span><span style="color:#478c90">Hello</span> <span style="color:#55859b">from</span> <span style="color:#478c90">Docker</span><span style="color:#171c19">.</span>
- <span style="color:#478c90">This</span><span style="color:#171c19"> message shows that your installation appears to be working correctly</span><span style="color:#171c19">.</span>
- <span style="color:#478c90">To</span><span style="color:#171c19"> generate </span><span style="color:#55859b">this</span><span style="color:#171c19"> message</span><span style="color:#171c19">,</span> <span style="color:#478c90">Docker</span><span style="color:#171c19"> took the following steps</span><span style="color:#171c19">:</span>
- <span style="color:#9f713c">1.</span> <span style="color:#478c90">The</span> <span style="color:#478c90">Docker</span> <span style="color:#478c90">Engine</span><span style="color:#171c19"> CLI client contacted the </span><span style="color:#478c90">Docker</span> <span style="color:#478c90">Engine</span><span style="color:#171c19"> daemon</span><span style="color:#171c19">.</span>
- <span style="color:#9f713c">2.</span> <span style="color:#478c90">The</span> <span style="color:#478c90">Docker</span> <span style="color:#478c90">Engine</span><span style="color:#171c19"> daemon pulled the </span><span style="color:#489963">"hello-world"</span><span style="color:#171c19"> image </span><span style="color:#55859b">from</span><span style="color:#171c19"> the </span><span style="color:#478c90">Docker</span> <span style="color:#478c90">Hub</span><span style="color:#171c19">.</span>
- <span style="color:#171c19">(</span><span style="color:#478c90">Assuming</span><span style="color:#171c19"> it was </span><span style="color:#55859b">not</span><span style="color:#171c19"> already locally available</span><span style="color:#171c19">.)</span>
- <span style="color:#9f713c">3.</span> <span style="color:#478c90">The</span> <span style="color:#478c90">Docker</span> <span style="color:#478c90">Engine</span><span style="color:#171c19"> daemon created a </span><span style="color:#55859b">new</span><span style="color:#171c19"> container </span><span style="color:#55859b">from</span><span style="color:#171c19"> that image which runs the
- executable that produces the output you are currently reading</span><span style="color:#171c19">.</span>
- <span style="color:#9f713c">4.</span> <span style="color:#478c90">The</span> <span style="color:#478c90">Docker</span> <span style="color:#478c90">Engine</span><span style="color:#171c19"> daemon streamed that output to the </span><span style="color:#478c90">Docker</span> <span style="color:#478c90">Engine</span><span style="color:#171c19"> CLI client</span><span style="color:#171c19">,</span><span style="color:#171c19"> which sent it
- to your terminal</span><span style="color:#171c19">.</span>
- <span style="color:#478c90">To</span> <span style="color:#55859b">try</span><span style="color:#171c19"> something more ambitious</span><span style="color:#171c19">,</span><span style="color:#171c19"> you can run an </span><span style="color:#478c90">Ubuntu</span><span style="color:#171c19"> container </span><span style="color:#55859b">with</span><span style="color:#171c19">:</span><span style="color:#171c19">
- $ docker run </span><span style="color:#171c19">-</span><span style="color:#171c19">it ubuntu bash
- </span><span style="color:#478c90">For</span><span style="color:#171c19"> more examples </span><span style="color:#55859b">and</span><span style="color:#171c19"> ideas</span><span style="color:#171c19">,</span><span style="color:#171c19"> visit</span><span style="color:#171c19">:</span><span style="color:#171c19">
- https</span><span style="color:#171c19">:</span><span style="color:#78877d">//docs.docker.com/userguide/</span></span></span>
复制代码
MacOS Docker 安装
使用 Homebrew 安装
macOS 我们可以使用 Homebrew 来安装 Docker。
Homebrew 的 Cask 已经支持 Docker for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装:
- $ brew install --cask --appdir=/Applications docker
- ==> Creating Caskroom at /usr/local/Caskroom
- ==> We'll set permissions properly so we won't need sudo in the future
- Password: # 输入 macOS 密码
- ==> Satisfying dependencies
- ==> Downloading https://download.docker.com/mac/stable/21090/Docker.dmg
- ######################################################################## 100.0%
- ==> Verifying checksum for Cask docker
- ==> Installing Cask docker
- ==> Moving App 'Docker.app' to '/Applications/Docker.app'.
- 🍺 docker was successfully installed!
复制代码 在载入 Docker app 后,点击 Next,大概会询问你的 macOS 登陆密码,你输入即可。之后会弹出一个 Docker 运行的提示窗口,状态栏上也有有个小鲸鱼的图标(
)。
手动下载安装
如果需要手动下载,请点击以下链接下载 Install Docker Desktop on Mac 。
如同 macOS 其它软件一样,安装也非常简单,双击下载的 .dmg 文件,然后将鲸鱼图标拖拽到 Application 文件夹即可。
从应用中找到 Docker 图标并点击运行。大概会询问 macOS 的登陆密码,输入即可。
点击顶部状态栏中的鲸鱼图标会弹出操作菜单。
第一次点击图标,大概会看到这个安装乐成的界面,点击 "Got it!" 可以关闭这个窗口。
启动终端后,通过命令可以检查安装后的 Docker 版本。
- $ docker --version
- Docker version 17.09.1-ce, build 19e2cf6
复制代码 镜像加速
鉴于国内网络题目,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来办理,我使用的是网易的镜像地址:http://hub-mirror.c.163.com。
在使命栏点击 Docker for mac 应用图标 -> Perferences... -> Daemon -> Registry mirrors。在列表中填写加速器地址即可。修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。
之后我们可以通过 docker info 来检察是否配置乐成。
- $ docker info
- ...
- Registry Mirrors:
- http://hub-mirror.c.163.com
- Live Restore Enabled: false
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |