我有一台笔记本运行 VSCode,远程有Linux ubuntu 系统服务器。我想用VSCode直接连接远程服务器内的一个docker container。
1. docker run 的时候加个参数 -p 8022:22 (意思是把本地笔记本8022 连接到 docker的 22)
2. 进docker 里 (docker run -it),然后运行
apt-get update
apt install -y openssh-server
vim /etc/ssh/sshd_config
3. 修改 sshd_config内:
PubkeyAuthentication yes
PasswordAuthentication yes
PermitRootLogin yes
4.wq 保存,再运行
passwd 设置密码
/etc/init.d/ssh restart
5. 完成后,在笔记本VSCode内 connect host设置:
Host xxx
HostName xxxx (IP地址)
Port 8022
User root (或者别的)
6.另外,如果 docker container 被停了,再开 ,再vscode ssh connect的时候,会连不上,需要在自己的笔记本上运行:
ssh-keygen -f "/Users/xxx/.ssh/known_hosts" -R "[xxxx(IP地址)]:8022"
这是因为对面那个服务器,在你本地笔记本看来,是个危险的未知服务器。