虚拟机中的windows server安装docker

Updated on with 0 views and 0 comments

一、基本情况

生产环境的windows server大多数时候是运行在虚拟机中的,要安装docker desktop的话,需要安装wsl2,但是wsl2需要开启虚拟嵌套,因此选择在windows server中安装wsl1,然后直接在里面安装docker engine

二、操作步骤

启用wsl功能

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

设置默认使用wsl1

wsl --set-default-version 1

安装ubuntu

wsl --install -d Ubuntu-20.04

安装过程中需要设置一个用户名密码,正常输入就行

安装完成后输入wsl -l就能看到安装的ubuntu了

三、切换wsl存储地址

查看已安装的发行版和存储位置

wsl -l -v

image.png

关闭wsl

wsl --shutdown

导出到D盘

wsl --export Ubuntu-20.04 D:\wsl\Ubuntu-20.04-backup.tar

注销ubuntu

wsl --unregister  Ubuntu-20.04

在要导入磁盘上建立文件夹

mkdir D:\wsl\Ubuntu-20.04

导入刚刚导出的ubuntu

wsl --import Ubuntu-20.4 D:\wsl\Ubuntu-20.04 D:\wsl\Ubuntu-20.04-backup.tar

导入后需要启动wsl

wsl -d Ubuntu-20.4

看到类似下述日志输出就成功了

image.png

四、安装docker

wsl安装好了以后就有了一个ubuntu环境,此时按照这个文档安装docker即可

ubuntu安装docker - wenyl 的个人博客

docker安装好了以后还会遇到一个问题,wsl1不支持IPv6 iptables,会导致WSL1无法创建桥接网络和默认网络,这里我们直接禁用掉Docker的IPV6和桥接网络

# 创建Docker配置目录
sudo mkdir -p /etc/docker

# 创建WSL 1专用配置
sudo tee /etc/docker/daemon.json << 'EOF'
{
  "storage-driver": "vfs",
  "exec-opts": ["native.cgroupdriver=cgroupfs"],
  "iptables": false,
  "ip-forward": false,
  "ip-masq": false,
  "ipv6": false,
  "bridge": "none",
  "data-root": "/var/lib/docker",
  "userland-proxy": false,
  "live-restore": true,
  "debug": true,
  "log-level": "debug",
  "default-address-pools": [
    {
      "base": "172.17.0.0/16",
      "size": 24
    }
  ],
  "dns": ["8.8.8.8", "8.8.4.4"]
}
EOF

# 重启Docker
sudo service docker start

五、常用命令

下面是常见的wsl命令

# 查看WSL版本
wsl --version

# 查看状态
wsl --status

# 列出可用发行版
wsl --list --online

# 列出已安装的发行版
wsl -l -v
# 或
wsl --list --verbose

# 安装新发行版
wsl --install -d Ubuntu-22.04

# 设置默认发行版
wsl --set-default Ubuntu-22.04

# 注销(删除)发行版
wsl --unregister Ubuntu-22.04

# 启动默认发行版
wsl
# 或
wsl ~

# 启动指定发行版
wsl -d Ubuntu-22.04
wsl -d Ubuntu-22.04 --cd ~

# 以特定用户启动
wsl -d Ubuntu-22.04 --user root
wsl -d Ubuntu-22.04 -u username

# 立即关闭所有WSL实例
wsl --shutdown

# 停止指定发行版
wsl --terminate Ubuntu-22.04

# 查看运行状态
wsl --list --running

# 导出发行版(备份)
wsl --export Ubuntu-22.04 D:\backup\ubuntu.tar

# 导入发行版
wsl --import Ubuntu-Backup D:\WSL\ D:\backup\ubuntu.tar

# 导入时指定版本
wsl --import Ubuntu-New D:\WSL\Ubuntu backup.tar --version 2

标题:虚拟机中的windows server安装docker
作者:wenyl
地址:http://www.wenyoulong.com/articles/2025/12/19/1766122394504.html