大家好,我是【豆干花生】,这次我带来了新的文章,与你分享~

服务器远程开发

0.远程开发

很多时候需要使用别人的服务器,或者云端的服务器进行开发。

而远程开发的特点是:

  1. 代码不放在自己电脑上,而是在远程连接的服务器上
  2. 可以在本地直接实时查看和修改远程服务器上的代码

推荐大家直接使用开发工具自带的远程开发插件,比如 JetBrains 全家桶和 VS Code。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v31WADft-1631004160818)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907154009552.png)]

参考文章:手把手体验远程开发,确实爽 - 程序员鱼皮的文章 - 知乎 https://zhuanlan.zhihu.com/p/394623634

这篇文章包含以下一些部分:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xfO20DDB-1631004160820)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907154117129.png)]

之后需要相关功能实现,可以再看看

1.注册开发机

在云服务商那里申请注册服务器,并且自己选择配置。其中硬件配置是一开始选好的,软件配置可以选择镜像。

或者跟公司申请服务器账号。

服务器账号包含三部分:主机ip地址10.10.112.xx;账号xx ;账号密码

完整的账号样子为:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L8raZyBR-1631004160821)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907142655560.png)]

2. mobaxterm登录开发机

mobaxterm是一种高级的cmd,可以看到文件夹结构等等。使用服务器必装。

安装mobaxterm,连接节点

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qQh4tUru-1631004160823)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907142856947.png)]

登陆成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rMvH4szs-1631004160824)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907150252544.png)]

3. 本地与远程服务器的文件传输

使用mobaxterm,可以直接把文件从本地拖进服务器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rP5uGRSF-1631004160825)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907145459924.png)]

也可以使用winscp进行文件传输

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4nEBwbvs-1631004160826)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907145628181.png)]

winscp介绍

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RgLqXbYf-1631004160828)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907143813053.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1d1FVlvd-1631004160829)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907143912771.png)]

winscp安装

原文链接:https://blog.csdn.net/yufengli_/article/details/54755505

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bUmRCUI3-1631004160830)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907144153488.png)]

安装成功。

WinSCP使用简介

原文链接:https://blog.csdn.net/qq_42000661/article/details/108847977

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PMkfs6sF-1631004160831)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907144457512.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zu3DU3s9-1631004160831)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907144354412.png)]

4. Linux安装anoconda

anaconda造虚拟环境,在虚拟环境里进行配置

anaconda可以创建多个隔离的环境,使用不同项目就可以挑选不同的环境。

原文链接:https://www.jianshu.com/p/1fddd11bcd25

原文链接:https://blog.csdn.net/shuzfan/article/details/78510683

原文链接:https://blog.csdn.net/qingfengxd1/article/details/109334199

以上三篇结合着看。

安装

1.先下载,下载地址:https://www.anaconda.com/products/individual

img2.下载好后,使用WinSCP将下载好的文件上传到服务器。
3.切换到anaconda3所在文件位置, 在文件目录下执行:

bash Anaconda3-2020.02-Linux-x86_64.sh

4.anaconda加入环境变量,并使其生效

打开.bashrc文件:

> vim ~/.bashrc

在.bashrc文件里面输入anconda的bin目录路径,如:

>  export PATH="/home/xxx/anaconda3/bin:$PATH"


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BrFdkqwI-1631004160833)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907151411518.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sJg1Tqa5-1631004160833)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907151426980.png)]

5.最后输入如下命令,更新配置文件即可:source ~/.bashrc

6.为了保持更新,可以在终端中执行:

conda upgrade --all

7.命令

sconda list 查看安装包
conda info --envs 查看环境
conda activate XXX 激活环境 (XXX 为环境名称)

python -V 检查Python版本

8.如果需要卸载anaconda的话,只需要删除anaconda目录即可:

rm -rf /root/xxx/anaconda3

anaconda换源

原文链接:https://blog.csdn.net/weixin_42784535/article/details/120119764

由于直接使用pip或者conda进行下载,速度有时候会很慢,所以我们要使用镜像源进行下载

原文链接:https://blog.csdn.net/weixin_42468475/article/details/112755750

换成清华源

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

修改最大下载时间
当因为网速过慢,导致系统自动中断下载时,可以设置最大下载时间:

conda config --set remote_read_timeout_secs 600.0

600表示10分钟,可以根据需要更改

5.上传本地文件到服务器

1.git clone

2.直接拖文件夹进入服务器(使用mobaxterm)

3.安装winscp,进行文件传递

6.使用pycharm/vscode远程开发文件

打开服务器(可以使用mobaxterm)

作者:程序员鱼皮
链接:https://zhuanlan.zhihu.com/p/394623634
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

1. 安装插件

首先打开 VS Code,点击左侧扩展按钮,搜索 “remote”,能够看到一些远程开发插件,支持 SSH 远程连接、连接 Docker 容器、连接Windows 上的 Linux 子系统等。

这里我们选择下图第二个 Remote - SSH ,点击安装即可:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-92jYVG3c-1631004160834)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160224673.png)]

2. 远程连接

安装好之后,按 ctrl + shift + p 打开命令面板,输入 “remote”,找到 Remote - SSH: Add New SSH Host ,添加一个 SSH 远程连接。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BEp1eFrZ-1631004160834)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160240046.png)]

根据提示输入你要连接的远程服务器的用户名、主机地址(如果没有服务器,在本地启动虚拟机也可以),记得带上 -A 参数(开启代理转发功能):

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jYGYhI75-1631004160835)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160248895.png)]

输入连接信息后,选择将该信息保存到一个配置文件中:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0JnouTwX-1631004160835)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160258320.png)]

然后连接信息就添加成功了:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4t5SdJGu-1631004160836)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160306767.png)]

点击 connect 按钮,就连接成功了,在左侧面板中可看到 “已连接到远程”:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xq9dAo7b-1631004160836)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160328049.png)]

3. 实时浏览

连接到远程后,我们就可以像操作自己本地电脑一样,浏览远程服务器上的文件。

比如说我这里进入自己的项目目录:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xSyIFTPP-1631004160836)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160337849.png)]

在左侧可以看到目录下的文件:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hnpYSdDt-1631004160837)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160346892.png)]

4. 远程编辑

让我们在编辑器中新建一个文件 test.java

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ENVTmh6A-1631004160837)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160356574.png)]

可以使用 XShell 等其他远程 SSH 连接软件访问同一台服务器,进入同一个目录,用 ls 查看目录下的文件,能看到在 VS Code 中新建的 java 文件:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4TaXEx0k-1631004160838)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160406360.png)]

以下功能作为补充,需要的时候再用:

5. 实时协作

我们可以用 VS Code 和其他 SSH 连接软件(如 XShell)来模拟两个用户正在同时协作编写同一个代码文件。

先在 VS Code 中写下一行优质代码:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R9YHWtbr-1631004160838)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160413419.png)]

再在 XShell 中编辑该文件,可以立即看到 VS Code 写下的那行代码,在它下面再写一行:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DzrPJITu-1631004160839)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160421172.png)]

保存之后,在 VS Code 中就能看到全部代码了:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lXxp7Nkk-1631004160839)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160429127.png)]

6. 端口转发

既然我们编辑的代码是在远程的,那代码也是运行在远程的,假如说要查看远程项目的运行效果,怎么办呢?

VS Code 提供了端口转发功能,可以配置远程服务器和本地端口的映射,以支持本地直接访问到远程服务器的应用。

ctrl + shift + p 打开命令面板,搜索 “forward”,选择转发端口:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JlWHRkG2-1631004160839)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160438821.png)]

输入要转发的端口号(应用占用的端口),就添加成功了,非常方便!

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rXICeWsy-1631004160840)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160446451.png)]

然后就能在本地访问运行的项目啦!

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tZBabNQ0-1631004160840)(C:\Users\yuan02.gao\AppData\Roaming\Typora\typora-user-images\image-20210907160455292.png)]

7. 远程调试

**除了远程编辑代码外,我们可以利用 VS Code 本身的代码提示能力和调试能力。**由于远程调试和本地调试几乎没有任何区别,此处不再演示。

7.vscode远程开发补充

本地更新文件后,要upload上传到服务器(vscode也会自动上传)

服务器更新文件后,要download到本地
一般流程:从服务器download文件,在本地vscode进行调试,可以在本地运行(因为运行的环境还是remote连接的远程环境),然后把更新后的代码上传到服务器上。

码字不易,都看到这里了不如点个赞哦~
我是【豆干花生】,你的点赞+收藏+关注,就是我坚持下去的最大动力~

在这里插入图片描述

亲爱的朋友,这里是我新成立的公众号,欢迎关注!
公众号内容包括但不限于人工智能、图像处理、信号处理等等~

之后还将推出更多优秀博文,敬请期待! 关注起来,让我们一起成长!
在这里插入图片描述

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐