【Vscode 远程连接 Docker 容器】

文章目录

    • 1. 配置docker镜像
    • 2. 安装 OpenSSH
    • 3. Vscode中安装 Remote-SSH 插件:
    • 4. 配置连接信息

1. 配置docker镜像

  • 在主机目录下创建一个 Dockerfile,注意文件名必须保持一致!!!(默认装了docker)

  • ubuntu:22.04 镜像

docker pull ubuntu:22.04
  • Dockerfile
FROM ubuntu:22.04

# Update package list and install sudo
RUN apt-get update && \
    apt-get install -y sudo && \
    rm -rf /var/lib/apt/lists/*

# Create a new user
RUN useradd -m cauchy && \
    echo 'cauchy:****' | chpasswd && \                          # 这里有user的密码,待会用于vscode的登入
    adduser cauchy sudo

# Set the working directory to /home/cauchy
WORKDIR /home/cauchy

# Set the user to cauchy
USER cauchy

# Start a shell session
CMD ["/bin/bash"]

  • 运行容器,映射端口:(主机7000:容器22)
docker built -t ubuntu:22.04 .
docker run -itd -p 7000:22 --name dockername ubuntu:22.04
  • 进入容器
docker attach dockername 

2. 安装 OpenSSH

  • 在 Docker 容器中安装 SSH 服务:
sudo apt-get install -y openssh-server
  • 启动 SSH 服务:
service ssh start
  • 修改 SSH 配置文件 /etc/ssh/sshd_config,将 PermitRootLoginPasswordAuthentication 分别设置为 yes
PermitRootLogin yes
PasswordAuthentication yes
  • 放开 22 端口
Port 22
  • 重启 SSH 服务:
service ssh restart

3. Vscode中安装 Remote-SSH 插件:

【Vscode 远程连接 Docker 容器】_第1张图片


4. 配置连接信息

  • 在 VSCode 中按下 F1 键,输入 “Remote-SSH: Connect to Host…”,选择 “Add New SSH Host…”

  • 在弹出的对话框中填写以下信息:(括号内替换)

    • Host Name: hostname@IP -p Port
    • User Name: username
    • Password: password
  • 生成如下信息:(C:/用户/.ssh/config)

    • Name: 当前连接的名称(随意)。
    • IP:连接主机的IP地址,你的服务器IP。
    • UserName:容器内的用户名。
    • Port:主机映射的端口(上述即:7000)。
Host (Name)
  HostName (IP)
  User (UserName)
  Port (Port)

你可能感兴趣的:(Docker,vscode,docker,ide,ssh,openssh)