VSCode通过SSH连接Docker环境进行开发

发布于:2024-03-02 ⋅ 阅读:(316) ⋅ 点赞:(0)

VSCode 插件

  • Remote - SSH

Docker 镜像

# Golang 镜像
docker pull golang:1.22

构建镜像

  • Dockerfile
FROM golang:1.22

WORKDIR /home

# 安装 SSH 服务
RUN apt-get update && apt-get install -y openssh-server
RUN apt-get install -y vim git wget tar
RUN mkdir /var/run/sshd

# 设置 root 用户密码(在生产环境中请使用更安全的方式)
RUN echo 'root:123456' | chpasswd

# 允许 root 用户登录
RUN sed -i '$aPermitRootLogin yes' /etc/ssh/sshd_config
RUN sed -i '$aPasswordAuthentication yes' /etc/ssh/sshd_config
RUN sed -i '$aPort 22' /etc/ssh/sshd_config
# 设置 SSH 登录时的欢迎信息
RUN echo "Welcome to Golang" > /etc/motd

# 暴露 SSH 端口
EXPOSE 22

# 启动 SSH 服务
CMD ["/usr/sbin/sshd", "-D"]
# 构建 Golang 开发环境镜像
docker build -t golang-dev:1.22.0 .

部署环境

# 部署 Golang 开发环境容器
docker run -d --name=golang-dev -p 2222:22 golang-dev:1.22.0

VSCode 连接本地Docker容器

在这里插入图片描述

VSCode SSH连接Docker容器

# 可以先在终端上试下能否正常连
ssh -p 2222 root@192.168.2.121
  • Remote - SSH 插件

在这里插入图片描述

  • 添加 SSH 连接

shift + command + p

在这里插入图片描述

  • 选择 ~/.ssh/config 文件

192.168.2.121是缩主机IP

# 添加容器 SSH 连接信息
Host docker-golang
    HostName 192.168.2.121
    Port 2222
    User root
    ForwardAgent yes
  • 选择连接到主机

在这里插入图片描述

  • 选择刚添加的配置
    在这里插入图片描述

  • 输入密码【回车】连接成功

# 查看 go 版本
go version

在这里插入图片描述

VSCode 打开容器内目录文件

在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看