Windows Server 部署Docker Engine

【问题描述】

结论:Docker Desktop 官方不支持 Windows Server 2022,只能用原生 Docker Engine(服务端版)

【解决办法】

1. 启用容器功能(必须)
复制代码
# 安装容器角色,自动重启
Install-WindowsFeature -Name Containers -Restart

重启后继续。

2. 安装 Docker Engine(两种官方方式)
方式 A:微软官方脚本(推荐,最新稳定版)
复制代码
# 下载安装脚本
Invoke-WebRequest -UseBasicParsing `
  "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" `
  -OutFile install-docker-ce.ps1

# 执行安装(自动配置服务、开机自启)
.\install-docker-ce.ps1
方式 B:微软官方包源(传统)
复制代码
# 安装包提供程序
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force

# 安装 Docker
Install-Package -Name docker -ProviderName DockerMsftProvider -Force

# 启动并设为开机自启
Start-Service docker
Set-Service -Name docker -StartupType Automatic
3. 验证安装
复制代码
docker --version
docker info
# 跑一个测试容器
docker run --rm hello-world

三、配置国内镜像加速(解决拉取慢)

创建 / 编辑 C:\ProgramData\Docker\config\daemon.json

复制代码
{
  "registry-mirrors": [
    "https://mirror.aliyuncs.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com"
  ],
  "experimental": false
}

重启 Docker 服务生效:

复制代码
Restart-Service docker

四、常用管理命令(无头环境必备)

复制代码
# 查看所有容器
docker ps -a
# 查看所有镜像
docker images
# 开机自启(默认已开启)
Get-Service docker | Select Name,Status,StartType
# 停止/启动/重启
Stop-Service docker
Start-Service docker
Restart-Service docker

五、与 Docker Desktop 的区别

  • Docker Engine(Server 用):纯服务、无头、无 GUI、生产稳定、支持 Windows 容器
  • Docker Desktop(Win10/11 用):带 GUI、WSL 2、K8s、适合开发、不支持 Server
相关推荐
小夏子_riotous1 小时前
Docker学习路径——7、Docker搭建MySQL 主从复制
linux·运维·mysql·docker·容器·centos·云计算
万岳科技系统开发1 小时前
私域直播系统直播间高并发访问的负载均衡方案
运维·负载均衡
MinterFusion2 小时前
如果openKylin 2.0 SP2主机的IPv4地址改变,如何让GitLab正常运行
运维·gitlab·系统配置·系统维护·明德融创
郝开2 小时前
Docker Compose 本地环境搭建:.env 统一配置模板
运维·docker·容器
IMPYLH2 小时前
Linux 的 sleep 命令
linux·运维·服务器·bash
天空属于哈夫克32 小时前
企微自动化:API接口的私有化部署架构
运维·架构·自动化
2401_836554222 小时前
服务器 Docker 部署 Hermes Agent → 飞书(零端口暴露)
服务器·docker·飞书
嵌入式×边缘AI:打怪升级日志2 小时前
DHT11 驱动开发实录:从零搭建 Linux 字符设备驱动框架(保姆级教学)
linux·运维·驱动开发
艾莉丝努力练剑2 小时前
【Linux网络】计算机网络入门:网络通信——跨主机的进程间通信(IPC)与Socket编程入门
linux·运维·服务器·网络·c++·学习·计算机网络