如何将 Visual Studio Code 终端附加到 podman 容器?

问题描述 投票:0回答:1

我已使用以下命令在 Ubuntu 22.04 操作系统上安装了 podman CLI

sudo apt-get update
sudo apt-get -y install podman

出于测试目的,我提取了

httpd
docker 映像,然后从该映像运行一个新容器。

podman pull python:slim
podman run -dt python:slim

现在我想将 Visual Studio Code 终端附加到最近创建的容器。因此,我从 VS Code 安装了 docker 扩展。但是,我收到以下警告。

连接失败。 Docker 安装了吗?

docker visual-studio-code podman
1个回答
0
投票

降级 Docker 扩展

为了解决这个问题,我必须将 Docker 扩展降级到 1.22.2 版本,因为 1.23.0 docker 扩展版本有一个已知的 重大更改。降级 Docker 扩展:右键单击 Docker 扩展 > 选择 Install Another Version... 选项 > 选择 1.22.2 版本。

code --install-extension [email protected]

或者,您也可以使用终端来降级扩展。

配置设置

下一步是在设置下配置

docker.host
docker.dockerPath
变量。在此之前,我们需要创建一个等效的 docker 守护进程,因为 Podman 是无守护进程的。这是通过启用
podman.socket
单元来实现的。

systemctl enable --now --user podman.socket

它公开了一个可以用作 docker 主机的 Unix 套接字。接下来,使用以下值更新 docker

settings.json

{
    "docker.host": "unix:///run/user/1000/podman/podman.sock",
    "docker.dockerPath": "/usr/bin/podman"
}

或者,您可以在 Settings 中搜索 Docker: Docker PathDocker: Host 部分并更新其值。

在 Linux 上,您可以通过以下方式识别 Podman 套接字位置:

podman info --format '{{.Host.RemoteSocket.Path}}'

以及使用此命令的 Podman CLI 路径:

which podman

连接终端

现在,您可以将终端连接到容器上。首先,启动容器,然后右键单击它并选择 Attach Shell 选项。

attach_shell_to_docker_image

您可以通过键入

exit
命令退出,然后按任意键关闭终端。

© www.soinside.com 2019 - 2024. All rights reserved.