Windows Server 2019 安装 Docker 完整指南

博主本人使用的是离线安装

1. 安装前准备

系统要求

  • 操作系统:Windows Server 2019(或 2016/2022)
  • 权限:管理员权限的 PowerShell
  • 网络:可访问互联网(或离线安装包)

启用容器功能

powershell 复制代码
Install-WindowsFeature -Name Containers

如果提示需要重启,但 Restart-Computer -Force 失败,请 手动重启服务器


2. 安装 Docker

方法 1:在线安装(推荐有网络环境)

powershell 复制代码
# 1. 安装 Docker 提供程序
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force -AllowClobber

# 2. 安装 Docker 引擎
Install-Package -Name Docker -ProviderName DockerMsftProvider -Force

# 3. 重启服务器
Restart-Computer -Force

⚠️ 常见问题

  • Install-Package 失败 → 检查网络或改用离线安装。

  • TLS 错误 → 运行:

    powershell 复制代码
    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

方法 2:离线安装(无网络环境)

  1. 下载 Docker EE

    • 官方地址:docker-24.0.7.zip
    • 解压到 G:\zy\docker-24.0.7\docker(或自定义路径)
  2. 手动安装

    powershell 复制代码
    # 添加 Docker 到系统 PATH
    [Environment]::SetEnvironmentVariable("Path", $env:Path + ";G:\zy\docker-24.0.7\docker", "Machine")
    
    # 注册 Docker 服务
    G:\zy\docker-24.0.7\docker\dockerd.exe --register-service
    
    # 启动服务
    Start-Service Docker

3. 验证安装

powershell 复制代码
# 检查 Docker 版本
docker --version

# 运行测试容器
docker run mcr.microsoft.com/windows/nanoserver:1809 cmd /c "echo Hello Docker!"

预期输出

复制代码
Docker version 24.0.7
Hello Docker!

4. 基本配置

修改数据存储目录

powershell 复制代码
# 停止 Docker
Stop-Service Docker

# 创建配置文件
@"
{
    "data-root": "G:\\docker-data"
}
"@ | Set-Content -Path "C:\ProgramData\docker\config\daemon.json"

# 启动服务
Start-Service Docker

配置镜像加速(国内用户)

json 复制代码
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

5. 常用命令

命令 用途
docker ps 查看运行中的容器
docker images 查看本地镜像
docker pull <镜像> 拉取镜像
docker exec -it <容器ID> cmd 进入容器
docker logs <容器ID> 查看容器日志

6. 故障排除

问题 解决方案
Docker 服务无法启动 检查 eventvwr.msc 中的错误日志
镜像拉取失败 更换镜像源或配置 registry-mirrors
权限不足 始终使用 管理员 PowerShell

7. 参考资源


✅ 至此,Docker 已在 Windows Server 2019 上成功安装并可用!

如需进一步协助,请提供具体错误信息。 🚀

相关推荐
武藤一雄1 天前
C# 引用传递:深度解析 ref 与 out
windows·microsoft·c#·.net·.netcore
青木9601 天前
封装成开箱即用的docker
docker·容器
还在忙碌的吴小二1 天前
k8s是啥?
云原生·容器·kubernetes
爱丽_1 天前
Docker 从原理到项目落地(镜像 / 容器 / 网络 / 卷 / Dockerfile)
网络·docker·容器
zhen241 天前
K8s Service
云原生·容器·kubernetes
janthinasnail1 天前
Docker镜像源加速器
docker·docker镜像源
我爱学习好爱好爱1 天前
Kubernetes 1.29集群上部署Java网站项目
java·容器·kubernetes
执笔为剑1 天前
1.2、docker环境部署
运维·docker·容器
qiuyuyiyang1 天前
MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置
windows·mysql·adb
桌面运维家1 天前
Windows下VHD虚拟磁盘启动U盘制作指南
windows