Windows 中如何安装和使用 Docker

下载

这里,我们采用 Docker Toolbox 来安装 Docker。

下载 Windows 版本的 Docker Toolbox。

Windows 系统的要求:

  • 64 位操作系统
  • 支持并且已经开启了硬件虚拟化技术(Hardware Virtualization Technology)

Docker Toolbox 是一个安装程序,利用它可以快速在 Mac 或 Windows 系统上,安装 Docker 。

安装

双击下载后的安装程序 DockerToolbox.exe ,开始安装。

默认勾选的安装软件有 6 个:

  • Docker Client for Windows
  • Docker Machine for Windows
  • Docker Compose for Windows
  • VirtualBox
  • Kitematic for Windows(Alpha)
  • Git for Windows

选择默认安装即可。

Docker Toolbox 中包含的软件的说明:

  • Docker Client for Windows

    Windows 中 的 Docker 客户端。

  • Docker Machine for Windows

    Docker Machine 是一个简化 Docker 安装的命令行工具,通过 docker-machine 命令,可以在相应的平台上安装 Docker 服务,比如 VirtualBox、 Digital Ocean、Microsoft Azure 等。也可以通过 docker-machine 来管理 VirtualBox 中的虚拟机。

  • Docker Compose for Windows

    在 Windows 中安装 docker-compose 命令。

  • VirtualBox

    流行的虚拟机软件有 VMware、VirtualBox 等,Docker Toolbox 提供了 VirtualBox 软件的安装包。

    如果你的电脑已经安装了 VirtualBox,就不要勾选它。安装 Toolbox 时,请先关闭 VirtualBox。

    由于 Docker 是基于 Linux Container 的,所以 Docker 服务器必须运行在 Linux 内核的操作系统上。在 Windows 平台上运行的 Docker,其实是运行在 Windows 上的虚拟机软件所创建的 Linux 虚拟机上。

  • Kitematic for Windows

    Docker GUI(图形用户界面),不推荐安装。

  • Git for Windows

    Windows 中的 Git 工具,如果你已经安装了 Git,就不要勾选。

    Docker Toolbox 提供了 windows 环境下的 Git 客户端(即 msysGit),msysGit 的优势是提供了一个命令行界面 Git Bash。

注意: 对于 linux,Docker client、Docker daemon 以及容器都可以直接运行在本地机器上;但对于 windows,Docker daemon 以及容器必须运行在 Linux 虚拟机上,这个虚拟机称为 Docker host。

关于 Docker 的几点说明:

  • Docker 引擎使用的是 Linux 内核特性,所以我们需要在 Windows 上使用一个轻量级的虚拟机 (VM) 来运行 Docker。我们使用 Windows 的 Docker 客户端来控制 Docker 虚拟化引擎的构建、运行和管理。
  • 为了简化这个过程,官方设计了一个叫 Boot2Docker 的应用程序,可以通过它来安装虚拟机和运行 Docker。
  • Docker 采用的是 C/S 架构。虽然你使用的是 Windows 的 docker 客户端,但是 docker 服务和容器依然运行在 Linux 宿主主机上。

安装完成后,桌面会有三个快捷方式:Docker Quickstart Termial、Oracle VM VirtualBox、Kitematic。

关于 Docker Toolbox 的安装说明:

在开始安装 Docker Toolbox 之前,可能很多人的 Windows 上,已经安装了 Git 和 VirtualBox。这里,建议先将它们卸载掉。然后,再来安装 Docker Toolbox。否则,可能出现各种问题。

安装 Docker Toolbox 时,在选择安装的组件界面,不要勾选 Kitematic for Windows,其他的五个都勾选。然后一直点击下一步,默认安装完成即可。

安装成功后,桌面会有两个快捷方式:Docker Quickstart Termial 和 Oracle VM VirtualBox。

开始使用

双击桌面的 Docker Quickstart Terminal 图标,从而打开一个终端。

首次运行时,会自动进行一些初始化配置(比如创建名称为 default 的 linux 虚拟机,配置环境变量等),需要等待一段时间。

全部完成后,可以看到命令提示符 $ 。

Start interactive shell

HP@LAPTOP-ND0NRET5 MINGW64 /c/Program Files/Docker Toolbox
$

像上面那样,就说明初始化配置成功了。而且 docker 服务器已经处于运行状态。

linux 虚拟机(名称为 default)的 IP 是 192.168.99.100,默认的用户名和密码是 docker/tcuser。

然后,我们就可以在终端(terminal)中,运行各种 docker 命令了。

查看 docker 的客户端和服务器端的版本信息

$ docker version
Client:
 Version:       18.03.0-ce
 API version:   1.37
 Go version:    go1.9.4
 Git commit:    0520e24302
 Built: Fri Mar 23 08:31:36 2018
 OS/Arch:       windows/amd64
 Experimental:  false
 Orchestrator:  swarm

Server:
 Engine:
  Version:      18.04.0-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.4
  Git commit:   3d479c0
  Built:        Tue Apr 10 18:23:35 2018
  OS/Arch:      linux/amd64
  Experimental: false

只查看 docker 客户端的版本

$ docker -v
Docker version 18.03.0-ce, build 0520e24302

# docker -v 等价于 docker --version

测试 hello-world

执行命令:

$ docker run hello-world

该命令会从 docker hub 上拉取 hello-world 镜像,并创建一个对应的容器,这个容器很快就运行完毕了。

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9bb5a5d4561a: Pull complete
Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

...

如果看到上述输出,就说明测试容器成功。

查看本地所有的 image(镜像)

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              e38bc07ac18e        9 days ago          1.85kB

docker images 等价于 docker image ls

查看本地正在运行的 container(容器)

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

由于刚刚基于 hello-world 镜像创建的容器实例,运行时间很短,就关闭了。所以,这里的列表没有数据。

docker ps 等价于 docker container ls

查看本地所有的容器(包括已经关闭的)

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
f248c28eeeee        hello-world         "/hello"            32 minutes ago      Exited (0) 32 minutes ago                       trusting_gates

docker ps -a 等价于 docker container ls –all

删除指定的容器

docker rm

等价于

docker container rm

$ docker rm f248c28eeeee

删除所有的容器

$ docker rm $(docker ps -a -q) 

删除指定的镜像

docker rmi

等价于

docker image rm

$ docker rmi hello-world

删除所有的镜像

$ docker rmi $(docker images -q) 

查看 machine 列表

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v18.04.0-ce

关于 Docker Quickstart Terminal 的使用说明

首次双击桌面的 Docker Quickstart Terminal 快捷方式时,会进行如下操作:

  • 打开一个终端(terminal);
  • 在 VirtualBox 中创建一台 Linux 虚拟机(名称为 default);
  • 配置 Windows 系统的环境变量;
  • 启动 Linux 虚拟机,并运行 docker 服务。

初始化配置需要等待一段时间。

下次双击 Docker Quickstart Terminal 时,就会直接打开终端,并且启动 linux 虚拟机(名称为 default)和 docker 服务。

在终端中,可以输入 docker 相关的命令,来操作 docker 。还可以管理 linux 虚拟机,比如启动、关闭等等。当然,你也可以直接通过 VirtualBox 来管理虚拟机。

其实,这个终端(terminal)就是一个命令行界面,它和 Windows 自带的 CMD 或者 PowerShell 的功能一样,都是在 Windows 中执行某些命令,只不过它的语法风格类似于 Linux。

在终端中,管理虚拟机的常用命令。

查看虚拟机列表

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v18.04.0-ce

关闭指定的虚拟机

$ docker-machine stop default

开启指定的虚拟机

$ docker-machine start default

在终端中,可以访问 Windows 系统的各个目录。只不过,风格和 linux 系统类似。

# 打印当前的工作目录
$ pwd
/c/Program Files/Docker Toolbox
# 切换到家目录
$ cd

# 打印当前的工作目录
$ pwd
/c/Users/HP
# 切换到指定的目录
cd /c/"Program Files"

或者
cd /c/Program\ Files

注意:切换到指定的目录时,如果目录名中有空格,需要用引号括起来。或者中间用反斜线。支持 tab 键自动填充。

共享目录

默认情况下,Windows 系统和 Linux 虚拟机的共享目录是 C:\Users。

也就是 Windows 系统的 C:\Users 目录,挂载到了 Linux 虚拟机的 /c/Users 挂载点。

如果你需要添加额外的共享文件夹,可以通过 VirtualBox 管理工具来进行设置。

配置国内的镜像仓库网址

由于 Docker 默认使用的是国外的镜像仓库, 对于国内的 Docker 使用者,拉取 image 时,可能很慢,甚至无法下载到本地。

为此,我们可以配置国内的镜像仓库网址。

推荐使用国内的官方镜像仓库 https://registry.docker-cn.com

这里,我们在终端中连接虚拟机,并进行配置。当然,你也可以直接在 VirtualBox 中访问虚拟机,或者通过 Xshell 来连接虚拟机。

打开终端,运行下面的命令连接指定的虚拟机。

# 连接 linux 虚拟机(名称为 default)
$ docker-machine ssh default

然后,编辑 /var/lib/boot2docker/profile 文件

docker@default:~$ sudo vi /var/lib/boot2docker/profile

在 –label provider=virtualbox 的下方,添加一行代码:

--registry-mirror https://registry.docker-cn.com

保存之后,重启 docker 服务。

docker@default:~$ sudo /etc/init.d/docker restart

或者 exit 退出 VM bash 后,在终端,执行下面的命令,重启 Linux 虚拟机。

$ docker-machine restart default

查看 docker 的基本信息,以检验配置是否成功。

$ docker info

从镜像仓库搜索指定的镜像

$ docker search mysql
# 热度不小于 100;显示完整的描述信息
$ docker search --filter=stars=100 --no-trunc mysql
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值