在阿里云的 Windows 服务器上创建和使用 Docker,需要根据你使用的 Windows Server 版本以及是否支持容器功能来操作。以下是详细步骤:
✅ 前提条件
-
确认操作系统版本:
- 支持 Docker 的 Windows Server 版本包括:
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
- Windows 10/11 Pro 或 Enterprise(不推荐用于生产)
- 必须是 64位系统
- 支持 Docker 的 Windows Server 版本包括:
-
确认实例规格:
- 确保有足够的内存(建议 ≥ 4GB)和磁盘空间。
-
启用 Hyper-V 和 Containers 功能(仅限某些版本)
🛠️ 步骤一:安装 Docker Engine on Windows Server
Windows 上的 Docker 分为两种:
- Docker Desktop(适合开发环境,需 WSL2,通常用于 Win10/Win11)
- Docker Engine for Windows Server(适用于 Windows Server,使用
dockerd作为服务运行)
由于你使用的是 阿里云 Windows 服务器(通常是 Server 2016/2019/2022),推荐使用 Docker Engine。
方法:通过 PowerShell 安装 Docker Engine(官方推荐方式)
1. 打开 PowerShell(管理员权限)
右键“开始” → “Windows PowerShell(管理员)”
2. 安装 OneGet PowerShell 模块(如果未安装)
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
3. 安装 Docker
Install-Package -Name docker -ProviderName DockerMsftProvider
此命令会从 Microsoft 官方源下载并安装最新稳定版 Docker。
4. 重启服务器(必须)
Restart-Computer -Force
5. 验证 Docker 是否正常运行
重启后再次打开 PowerShell:
docker --version
查看服务状态:
Get-Service docker
启动 Docker 服务(如未自动运行):
Start-Service docker
🐳 步骤二:运行第一个容器(测试)
docker run hello-world:nanoserver
或运行 IIS 示例容器:
docker run -d -p 80:80 mcr.microsoft.com/windows/servercore/iis
然后在浏览器访问服务器公网 IP,看是否显示 IIS 欢迎页。
🔧 可选:配置 Docker 开机自启
Docker 服务默认应该已设置为自动启动,检查:
Set-Service docker -StartupType Automatic
⚠️ 注意事项
-
镜像兼容性问题:
- Windows 容器只能运行与宿主系统版本兼容的镜像。
- 例如:Windows Server 2019 可以运行
ltsc2019镜像,但不能运行ltsc2022或windows 11相关镜像。
-
网络模式:
- 默认使用
nat网络。 - 可通过
docker network ls查看。
- 默认使用
-
存储路径:
- 默认数据目录在
C:ProgramDatadocker - 如需更改,可编辑配置文件
C:ProgramDatadockerconfigdaemon.json
- 默认数据目录在
示例 daemon.json:
{
"data-root": "D:\docker"
}
修改后重启 Docker 服务:
Restart-Service docker
❌ 不推荐:在 Windows Server 上安装 Docker Desktop
- Docker Desktop 主要面向 Windows 10/11 专业版/企业版
- 依赖 WSL2,而 Windows Server 虽然支持类似功能,但配置复杂且非标准做法
- 生产环境应使用原生 Docker Engine
✅ 推荐方案总结
| 项目 | 推荐选择 |
|---|---|
| 操作系统 | Windows Server 2019 / 2022 |
| Docker 类型 | Docker Engine(通过 DockerMsftProvider 安装) |
| 安装方式 | PowerShell 命令行 |
| 镜像选择 | 使用 mcr.microsoft.com/windows/servercore 或 nanoserver |
📚 参考文档
- Microsoft 官方文档 – Install Docker on Windows Server
- Docker 官方 Windows 文档
如果你希望使用 Linux 容器(更广泛、更轻量),建议直接购买 阿里云 ECS Linux 服务器(如 CentOS/Ubuntu),Docker 支持更好、生态更成熟。
如有具体错误信息或版本号,欢迎提供,我可以进一步帮你排查。
CLOUD技术博