开发配置
首先你得喜欢使用SSH远程(云开发),然后可以继续看下去, 否则还是常规的本地开发吧。
vscode+ssh大概几点优势,我就直接把官网copy过来了,后面是具体操作:
- 使用沙箱中的开发环境,以避免影响本地计算机配置。
- 小白轻松上手,让每个人都保持一致的环境。
- 使用本地操作系统上的工具(vscode)管理多个项目版本。
- 使用适用于Linux的Windows子系统开发Linux部署的应用程序。
- 可以多端访问现有开发环境。
- 调试运行在其他位置(如客户站点或云中)的应用程序。
实现目标以及主要步骤
目标:通过ssh免密码登录远程服务器,并在远程服务器的沙箱环境中进行项目的开发工作。以达到代码云端管理,开发环境随时保持一致性。
步骤:
- 第一步。本地计算机 生成pub公钥文件(与git生成公钥一模一样)
- 第二步。复制本地计算机的公钥文件内容 到 远程主机authorized_keys文件中(如果自己没有,可以先用公司服务器学习~)
- 第三步。至此已完成,在VSCODE中启动,检测是否成功
- 可选操作:通过配置简化登录步骤
生成并设置SSH密钥
1.检查本地计算机上是否已有SSH密钥
ssh-keygen -t rsa -b 4096
# 提示:没有ssh-keygen?安装支持的SSH客户端(用于登录服务器),比如 Xshell 5
2.将本地公钥(id_rsa.pub文件)的内容添加到SSH主机authorized_keys上的相应文件中。
# 将本地公钥(C:\Users\dministrator\.ssh\id_rsa.pub文件)的内容复制后,粘贴到到SSH authorized_keys 文件末尾。
# 进入该文件目录
cd ~/.ssh/
# 编辑该文件,按下 i (进入编辑模式),移动光标到文件末尾,鼠标右键选择粘贴 ,按下esc(退出编辑模式),按下 :wq(保存并退出)
vi authorized_keys
3.本地计算机以管理员身份启动命令行终端
> SET REMOTEHOST=youxpc@45.77.157.84
> scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
> ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"
期间,可能会提示你,你想要链接的服务器ip不安全,先跳过,选择 yes
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is 4d:28:ed:f1:3d:40:fe:68:c8:b3:b0:9b:a7:dc:5d:7e.
Are you sure you want to continue connecting (yes/no)?
vscode 连接到远程SSH
- 启动vscode
- 安装插件 Remote Development并重启vscode
- 按下F1
- 输入remote-ssh,选择connect-to-hotst
- 输入SSH密钥中你设置的用户名和远程ip地址,例如: root@135.16.123.15,回车即可
- 此时会自动打开一个新窗体,注意观测左下角,正确连接到远程服务器,则会显示对应IP地址
通过配置登录SSH
每一次在本地登录远程SSH服务器,依然需要输入root@135.16.123.15
(用户名和ip),如果有多个服务器,会很难记住,简化为通过配置启动
- vscode中按下
F1
- 输入
remote-container
,选择remote-container:Add Development Container Configuration File
- 输入以下内容,并保存
Host myssh
HostName 135.16.123.15
User root
- 重复步骤按下F1 --> 选择remote-SSH --> 选择myssh
另一种测试是否配置成功方法
直接在cmd中执行
> ssh root@135.16.123.15
成功则会出现下图所示(cmd变成了客户端工具):