You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows下WSL2部署Docker遇GLIBC版本缺失问题求助

问题描述

在Windows上通过WSL2运行Ubuntu 20.04.6 LTS,跟随Udemy《Docker和Kubernetes完全指南》教程使用Docker Desktop提供的docker命令时,出现GLIBC版本不兼容错误:

/mnt/wsl/docker-desktop/cli-tools/usr/bin/com.docker.cli: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /mnt/wsl/docker-desktop/cli-tools/usr/bin/com.docker.cli)
/mnt/wsl/docker-desktop/cli-tools/usr/bin/com.docker.cli: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /mnt/wsl/docker-desktop/cli-tools/usr/bin/com.docker.cli)

当前系统GLIBC版本为2.31,且无法通过apt进一步升级:

root@LAPTOP1:/mnt/c/Users/user01# ldd --version
ldd (Ubuntu GLIBC 2.31-0ubuntu9.14) 2.31
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

root@LAPTOP1:/mnt/c/Users/user01# apt-cache policy libc6
libc6:
  Installed: 2.31-0ubuntu9.14
  Candidate: 2.31-0ubuntu9.14
  Version table:
 *** 2.31-0ubuntu9.14 500
        500 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
        100 /var/lib/dpkg/status
     2.31-0ubuntu9 500
        500 http://archive.ubuntu.com/ubuntu focal/main amd64 Packages

root@LAPTOP1:/mnt/c/Users/user01# apt-get install libc6
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc6 is already the newest version (2.31-0ubuntu9.14).
0 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.

WSL发行版信息:

PS C:\Users\user01> wsl --list --verbose
  NAME                   STATE           VERSION
* Ubuntu                 Running         2
  docker-desktop         Running         2
  docker-desktop-data    Running         2

Ubuntu版本:

root@LAPTOP1:/mnt/c/Users/user01# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.6 LTS
Release:        20.04
Codename:       focal
解决方法

方案1:升级Ubuntu发行版到22.04 LTS

Ubuntu 22.04默认搭载GLIBC 2.35,完全满足Docker CLI的版本要求,这是最彻底的解决方案:

  1. 更新现有系统包:
    sudo apt update && sudo apt upgrade -y
    
  2. 启动发行版升级:
    sudo do-release-upgrade
    
  3. 按照终端提示完成升级流程,升级完成后重启WSL即可正常使用docker命令。

方案2:在Ubuntu 20.04中安装原生Docker CE CLI

绕过Docker Desktop提供的高版本CLI,直接在Ubuntu发行版内安装适配GLIBC 2.31的Docker官方CLI:

  1. 卸载可能存在的旧版Docker相关包:
    sudo apt remove docker docker-engine docker.io containerd runc
    
  2. 添加Docker官方软件源:
    sudo apt update
    sudo apt install ca-certificates curl gnupg lsb-release
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    
  3. 安装Docker CE及CLI:
    sudo apt update && sudo apt install docker-ce docker-ce-cli containerd.io
    
  4. 验证安装:
    docker --version
    
    此时CLI为适配Ubuntu 20.04的版本,可正常运行。

方案3:替换Docker Desktop的CLI为兼容版本(不推荐)

若不想升级系统或安装本地Docker,可手动替换Docker Desktop提供的CLI为兼容GLIBC 2.31的版本(如Docker 20.10.x系列):

  1. 下载对应版本的Docker CLI二进制包(需选择适配GLIBC 2.31的版本)
  2. 解压后替换原CLI文件:
    sudo cp path/to/downloaded/com.docker.cli /mnt/wsl/docker-desktop/cli-tools/usr/bin/com.docker.cli
    
  3. 设置文件执行权限:
    sudo chmod +x /mnt/wsl/docker-desktop/cli-tools/usr/bin/com.docker.cli
    
    注意:该方法可能因Docker Desktop自动更新而失效,仅作为临时解决方案。

内容的提问来源于stack exchange,提问作者peter.petrov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 07:15:11