下载安装
附件
随着云计算及云原生的发展,Docker 基本上成了事实上的部署方式。对于运维来讲,使用 Docker 镜像非常简单(当然制作 Docker 镜像还是有些门槛);对于开发来讲,可以快速搭建和切换开发环境,也可以很好地保持开发环境和生产环境的一致性。XSwitch 目前仅提供 Docker 镜像的部署方式。为照顾不熟悉 Docker 的用户,本文提供一些 Docker 安装参考。如果你还不熟悉 Docker,可以先阅读Docker 简介及常用命令,读完了别忘了回来。
Docker 安装
如果你使用 Ubuntu 或者 Debian Linux 等操作系统,可以使用如下命令一键安装(通过--mirror
参数使用阿里云的镜像速度会快一些):
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
或使用 DaoCloud 提供的一键安装方式:
curl -sSL https://get.daocloud.io/docker | sh
上述安装过程适用于在开发环境下安装,如果是生产环境,建议参考官方的安装文档 https://docs.docker.com/engine/install/debian/ 进行安装。
在 macOS 和 Windows 上,推荐安装 Docker Desktop 版本。比如,在 Windows 上,可以从 https://docs.docker.com/desktop/install/windows-install/ 下载 Docker Desktop on Windows 安装包,然后双击安装即可。该版本有两个后端可选,一个是 Hyper-V,一个是 WSL 2。两种后端都有各自的优缺点和适应的情况,官方没有特别推荐哪一种方式更好,不过,笔者倒是建议先尝试使用 WSL 2 后端,如果有问题再换到 Hyper-V。
安装完成后,可以在 PowerShell 中输入docker run --rm hello-world
来测试一下是否安装成功。
在 Windows 上,还有另外一种安装方式,那就是先用 WSL 安装 Debian(或 Ubuntu),再在 Debian 里面按照上面讲的 Debian 上的方法安装 Docker。
在 macOS 上,可以从 https://docs.docker.com/desktop/install/mac-install/ 下载 Docker Desktop for macOS 安装包,该安装包有两个版,分别是基于 Intel CPU 的和基于 Apple Silicon CPU 的,根据自己使用的 CPU 选择即可。下载安装包后,双击节安装包,在打开的窗口中将 Docker 图标拖到 Applications 文件夹中即可。
Orbstack 是 macOS 上的 Docker Desktop 的替代品,比后者更轻量级,界面也简洁,非常好用,笔者一直使用它。它使用类似 WSL 的集成方式,支持安装 Linux 虚拟机 和 Docker。目前对个人使用是免费的。
不同系统上具体的安装方法不同,也有不少细节,下面再提供一些安装方式,供参考。
在 Debian 上安装 Docker
参考官方的安装文件,需要安装 Docker Engine 和 Docker Compose(如果非 root 用户请在命令前加 sudo
),如下:
apt-get remove docker docker-engine docker.io containerd runc apt-get update apt-get install ca-certificates curl gnupg lsb-release mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null apt-get update apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
安装完可以用docker version
和 docker compose version
命令查看是否安装成功。
最新版的 Docker Compose 是 Docker CLI 的一部分,命令执行方式改为 docker compose
,与旧版docker-compose
可在服务器上并存。两者的具体区别可参见 https://docs.docker.com/compose/cli-command-compatibility。
在 Windows 上安装 Docker
在 Windows 上安装 Docker 有两种方式:
- 通过 WSL 2 安装 Debian(或 Ubuntu),再在 Debian 里面安装 Docker Engine。
- 直接安装 Docker Desktop,这种方式是 Windows 原生的安装方式。
第一种方法实际上跟在上面讲的在 Debian 中的安装方式一样,下面,我们仅介绍第二种方式。
Docker Desktop
Windows 环境可以选择安装 Docker Desktop, 其中包含了 Docker Engine 、 Docker CLI 、 Docker Compose 等应用,并且还提供了一个简单的 GUI(图形用户界面),让您可以直接从您的机器管理您的容器、应用程序和镜像。
安装前提
- 需要安装 1.1.3.0 或更高版本的 WSL 2 。
- Windows 11 64 位:家庭版或专业版 21H2 或更高版本,或者企业版或教育版 21H2 或更高版本。
- Windows 10 64 位:
- 建议使用 Home 或 Pro 22H2(内部版本 19045)或更高版本,或者 Enterprise 或 Education 22H2(内部版本 19045)或更高版本。
- 最低要求是家庭版或专业版 21H2(内部版本 19044)或更高版本,或者企业版或教育版 21H2(内部版本 19044)或更高版本。
- 在 Windows 上打开 WSL 2 功能。
- 硬件要求:
- 64 位处理器
- 4GB 系统内存
- 在 BIOS 中启用硬件虚拟化
安装 WSL 2
Docker 依赖 WSL,WSL(Windows Subsystem for Linux,适用于 Linux 的 Windows 子系统)是微软公司推出的一种在 Windows 上运行 Linux 的技术。WSL 有两个版本,我们推荐 WSL 2。关于两个版本的区别,可以参考微软的官方文档 WSL 2。
要安装 WSL 2,从 Windows 开始菜单启动启动 Windows Terminal,然后在 Windows Terminal 中输入以下命令安装 Linux 发行版:
wsl --install -d Debian
完成后,使用“开始”菜单打开 Debian。 系统将要求你为 Linux 发行版创建“用户名”和“密码”。
更多 WSL 命令或者使用信息,请参考官方文档。
安装 Docker Desktop
下载安装包
点击下载 Docker Desktop,并按照安装说明进行操作。
启动
安装后,从 Windows 开始菜单启动 Docker Desktop,然后从任务栏的隐藏图标菜单中选择 Docker 图标。 右键单击该图标以显示 Docker 命令菜单,然后选择“设置”。
修改配置
确保在“设置”>“常规”中选中“使用基于 WSL 2 的引擎”。 通过转到“设置”>“资源”>“WSL 集成”,从要启用 Docker 集成的已安装 WSL 2 发行版中进行选择。
安装后确认
若要确认已安装 Docker,在 Windows Terminal 中输入 docker --version
来显示版本和内部版本号。
网络模式
在 Windows 上,使用 Docker Desktop 运行的容器使用 NAT 网络模式,通过这种模式,可以让局域网上的机器访问到容器内的服务,如 XSwitch。
XSwitch 需要的网络比较复杂,需要开通好多 TCP 和 UDP 端口,在使用时要注意。
如果使用第一种方式安装的 Docker(在 WSL 2 上安装的 Debian 里面安装的 Docker Engine),可以在 Debian 里使用 Host 网络模式运行容器,在宿主机上可以正常访问,但是,在局域网上其他机器上访问就比较复杂。
如果你安装 Docker 后只是在本地(Windows 宿主机上)测试和开发 XSwitch,则两种安装方式没什么不同。但如果你想在局域网上访问 XSwich 服务,且是使用第一种方式安装的 Docker,则需要做一些额外的配置,具体可以参考下面的 WSL 2 镜像模式相关配置。
WSL 2 镜像模式
启用镜像模式会将 WSL 更改为全新的网络体系结构, 它会将 Windows 上的网络接口“镜像”到 Linux 中。
启用方式如下:
- 在 Windows 的
%UserProfile%
目录下创建 .wslconfig 文件 - 在 .wslconfig 文件中添加以下内容:
[experimental] autoMemoryReclaim=gradual networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true sparseVhd=true hostAddressLoopback=true
- 在 Windows Terminal 中输入以下命令,停止 Linux
wsl --shutdown
- 在 Windows Terminal 中输入以下命令,重新启动 Linux
wsl
- 在 Windows Terminal 中输入以下命令,查看是否启用成功
ip addr
检查其网络接口是否为 Windows 的网络接口,是的话表示启用成功。
更多参考
以下链接上列出了各操作系统上 Docker 的安装方法:
下面几个链接上也有中文的安装说明,内容有些旧,仅供参考。
- https://www.runoob.com/docker/windows-docker-install.html
- https://www.runoob.com/docker/ubuntu-docker-install.html
- https://www.runoob.com/docker/macos-docker-install.html
以下地址上有更多参考链接:
https://github.com/rts-cn/xswitch-free 。
安装旧版本 docker-compose
有时候,可能需要旧版本的docker-compose
。如果您需要安装旧版的docker-compose
,以下命令供参考:
curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose