在2025年4月5日,VSCode发布了新的更新版本。若未配置禁止自动更新,软件将默认进行升级。这导致了先前能够连接的Docker容器镜像出现了连接问题,系统提示容器未能满足VS Code服务器的所有要求。

最新版本的VScode连接容器会出现报错解决方法_docker

原因是因为从VS Code 1.99版本(2025年3月)开始,由VS Code发布的预构建服务器只兼容基于glibc 2.28或更高版本的Linux发行版。南向环境搭建的Docker容器是基于ubuntu20.04系统正好低于支持的发行版本,导致无法连接。

最新版本的VScode连接容器会出现报错解决方法_Docker_02

解决方法有三个方法解决当前问题:

方法一:回退版本

这个问题应该是vscode自动升级导致的问题,这里我还是回退vscode的版本就解决这个问题了。

解决步骤是进入设置界面:

最新版本的VScode连接容器会出现报错解决方法_docker_03

关闭vscode自动更新:搜索update或者自动更新,然后把自动更新关闭。

最新版本的VScode连接容器会出现报错解决方法_环境变量_04

下载vscode的历史版本:例如下载24年最后更新版本,下载后直接按照,覆盖原来的vsccode版本。下载地址: https://code.visualstudio.com/updates/v1_96

最新版本的VScode连接容器会出现报错解决方法_环境变量_05

方法二:重新搭建Docker容器,拉取新的镜像环境

打开window下的指令终端,使用docker pull方式重新拉取Docker镜像,指令如下:

docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard:3.2
  • 1.

其他之前Docker指令,按照之前的手册将指令后的链接名替换成swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard:3.2,重新执行就可以了。

需要注意这个容器没有带repo,如果下载代码需要repo,则需要自行搭建repo指令。

在docker容器里面执行如下命令安装码云repo工具cd /root

mkdir bin
 
curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o bin/repo
 
chmod a+x bin/repo
 
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

在docker容器里面将repo添加到环境变量

vim ~/.bashrc # 编辑环境变量
export PATH=/root/bin:$PATH # 在环境变量的最后添加一行repo路径信息
source ~/.bashrc # 应用环境变量
  • 1.
  • 2.
  • 3.

方法三:更新相关连接 glibc 和 libstdc++ VSCode 服务器的先决条件

是更新镜像中LIBC的版本,但是不推荐大家这样操作,容易出现问题。如果实在需要操作可以参考https://blog.csdn.net/qq_33968692/article/details/146191922