目录
- 开始使用Docker
- 在OS X安装Docker
- 理解镜像(images)和容器(containers)
- 搜索&运行whalesay镜像
- 构建你自己的镜像
- 创建Docker Hub账号(account)&库(repository)
- 标记(Tag),推送(Push),拉取(Pull)你自己的镜像
Mac OS X用户使用Docker Toolbox安装Docker软件, Docker Toolbox包含了下列的Docker 工具:
- Docker CLI客户端, 用来运行Docker Engine,并创建镜像和容器
- Docker Machine, 在Mac OS X终端运行Docker Engine命令
- Docker Compose, 用来运行
docker-compose
命令 - Kitematic, Docker图形用户界面
- Docker QuickStart, 快速启动Docker命令行环境的shell
- Oracle VM VirtualBox
由于Docker Engine守护进程使用特定的Linux内核的功能, 你无法再本地的OS X运行Docker Engine, 与之代替的是你必须使用Docker Machine命令docker-machine
在你本地的机器创建并连接一个小型的linux虚拟机. 这个就在你Mac上的虚拟主机就是Docker Machine.
第一步,检查版本
你的Mac必须运行OS X 10.8 “Mountain Lion”或以上的系统才能运行Docker, 你可以这样查看OS的版本:
- 从苹果菜单中选择”关于本机”
- 如果你的版本正确,就可以进行下一步了
如果你没有使用支持的版本,你需要考虑先升级的你操作系统
第二步,安装Docker Toolbox
点击下载链接
通过双击下载的安装包, 或者右键安装包在弹出的菜单中选择”打开”, 来安装Docker Toolbox
安装程序将启动一个介绍对话框,介绍安装内容的概述。
点击”继续”安装toolbox
安装程序为你提供了选项, 自定义标准安装
默认的, 标准的Docker Toolbox安装:
- 为Docker 工具在
/usr/local/bin
安装二进制文件 - 使这些二进制文件对所有用户可用
- 更新已经存在的Virtual Box
现阶段, 不要修改任何的默认选线
- 为Docker 工具在
点击”安装”, 执行标准安装
系统会提示你输入密码
输入你的密码, 继续完成安装
当它完成后,安装程序提供了一些快捷键。您可以忽略此为现在和点击继续。
点击”关闭”结束安装
第三步, 验证安装
为了运行一个Docker容器, 你需要:
- 创建一个新的(或者开始一个已经存在的)Docker Engine 主机
- 从你的环境切换到新的VM环境
- 使用Docker客户端创建, 加载, 管理容器
一旦你创建了Docker machine, 你可以想任何一个Virtual Box VM一样随时使用它, 它会保持你使用后的相关配置.
打开Launchpad, 找到Docker Quickstart Terminal图标
点击Docker Quickstart Terminal图标, 打开一个窗口.
终端会做一系列的事情来为你设置Docker Quickstart Terminal
Last login: Sat Jul 11 20:09:45 on ttys002 bash '/Applications/Docker Quickstart Terminal.app/Contents/Resources/Scripts/start.sh' Get http:///var/run/docker.sock/v1.19/images/json?all=1&filters=%7B%22dangling%22%3A%5B%22true%22%5D%7D: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS? Get http:///var/run/docker.sock/v1.19/images/json?all=1: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS? -bash: lolcat: command not found mary at meepers in ~ $ bash '/Applications/Docker Quickstart Terminal.app/Contents/Resources/Scripts/start.sh' Creating Machine dev... Creating VirtualBox VM... Creating SSH key... Starting VirtualBox VM... Starting VM... To see how to connect Docker to this machine, run: docker-machine env dev Starting machine dev... Setting environment variables for machine dev... ## . ## ## ## == ## ## ## ## ## === /"""""""""""""""""\___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~ \______ o __/ \ \ __/ \____\_______/ The Docker Quick Start Terminal is configured to use Docker with the “default” VM.
在终端窗口上点击鼠标用来激活
如果你不熟悉终端窗口,这里有一些快速提示。
该提示是传统的$美元符号。你输入命令在命令行这是提示后的区域。您的光标被突出显示的区域或指示|出现在命令行。键入命令后,一直按回车键。
键入命令
docker run hello-world
然后按回车键该命令为你做了一些工作,如果一切运行良好,则该命令的输出如下所示:
$ docker run hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 535020c3e8ad: Pull complete af340544ed62: Pull complete Digest: sha256:a68868bfe696c00866942e8f5ca39e3e31b79c1e50feaee4ce5e28df2f051d5c Status: Downloaded newer image for hello-world:latest Hello from Docker. This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker Engine CLI client contacted the Docker Engine daemon. 2. The Docker Engine daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker Engine daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker Engine daemon streamed that output to the Docker Engine CLI client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker Hub account: https://hub.docker.com For more examples and ideas, visit: https://docs.docker.com/userguide/
寻找故障排除帮助?
通常情况下,上述步骤工作外的开箱,但某些情况下可能会出现问题。如果你的Docker运行的hello-world没有工作,出现了错误,请查看故障排除快速修复常见问题。
下一步去哪里?
此时, 您已成功安装了Docker软件. 离开Docker Quickstart Terminal窗口. 现在, 进入下一个页面, 阅读一个非常简短的介绍, [Docker镜像和容器]