1.启动ssh服务
bash
vim /root/.bashrc 或者 vim ~/.bashrc
/usr/sbin/sshd #启动ssh服务
~代表主目录,cd ~会返回root目录
cd / 返回最根上的目录
为了防止每次打开容器都要输入此指令,我们直接在 ~/.bashrc文件最后一行添加sshd启动命令即可。
打开终端,会自动执行 ~/.bashrc,我们也可以在~/.bashrc文件中配置代理
2.设置passwd
bash
容器终端输入:
passwd
然后设置密码,此密码为登录此容器的密码
3.重启SSH服务
我们对报错进行修改,做了一些操作之后,要重启ssh服务
bash
ps -ef | grep sshd #找到sshdid,杀死
#00:00:00 sshd: /usr/sbin/sshd [listener] 0 of 10-100 startups 这一行的id
kill -9 ID
/usr/sbin/sshd #重启ssh服务
4.vscode中设置
4.1配置config文件
python
#config文件
Host 11.171.238.217-docker-sd6
HostName 11.171.238.217 #此处为服务器的名字
User root
Port 1115 #端口为创建容器时对外暴露的端口 -p 1115:22
登录过程中的密码为容器中passwd设置的密码,不是服务器的密码
4.2连接上服务器之后,要在本地和ssh端都下载如下三个插件
一般情况,都是本地有这三个插件,远程没有,点红框直接在远程安装,注意,两者版本要一致
4.3添加容器中的解释器,这样才可以点击代码,到库里去
查看--- 命令面板---python解释器(Python: Select Interpreter)
右下角显示容器中的解释器后就算成功
有时候选择环境中的解释器的时候老是报错,检查一下,创建容器的时候,NPU是否挂载成功
bash
/usr/local/bin/npu-smi info
5.报错解决
5.1启动ssh报sshkey错误,如下
bash
报错:
Unable to load host key: /etc/ssh/ssh_host_rsa_key
Unable to load host key: /etc/ssh/ssh_host_ecdsa_key
Unable to load host key: /etc/ssh/ssh_host_ed25519_key
解决方式:容器终端中输入如下:
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -P '' -q
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -P '' -q
ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -P '' -q
'''
注:这些指令是用来生成 SSH 服务器所需的密钥文件的。
SSH 服务器使用这些密钥文件来验证客户端的身份,并加密和解密数据传输。
具体来说,这些指令分别生成了 RSA、ECDSA 和 Ed25519 三种类型的密钥文件,
分别保存在 /etc/ssh/ssh_host_rsa_key、/etc/ssh/ssh_host_ecdsa_key 和 /etc/ssh/ssh_host_ed25519_key 这三个文件中。
其中:
-t 选项指定生成密钥文件的类型。这里分别指定了 RSA、ECDSA 和 Ed25519 三种类型的密钥文件。
-f 选项指定生成的密钥文件的文件名和路径。
-P 选项指定生成密钥文件时的密码。这里使用空密码。
-q 选项指定在生成密钥文件时不显示任何提示信息,以便自动化脚本使用。
'''
5.2git报错信息:
bash
报错:
git SSL certificate problem: unable to get local issuer certificate
解决方式
git config --global http.sslVerify false
5.3vscode报错AllowTcpForwarding是no 解决方式:
此报错在vscode界面右下角出现,点进去,看报错日志,才会看到AllowTcpForwarding是no
bash
解决方法:容器终端:
vi /etc/ssh/sshd_config #打开此文件,将AllowTcpForwarding设置为yes