ubuntu vscode配置c语言环境_配置docker+vscode远程代码编辑和审计环境

f5b866065ebe9f777f9f7b03d9d70d9a.png

前几天双十一购买了一个小型的NAS,NAS的自带系统支持完整的linux环境ssh server,用来保存代码和相关工具还是很方便的,前几天有人问我怎么配置方便的远程编辑环境,我这找个机会简单写一下配置,这个东西利用现有工具并不复杂。

文中用到的工具主要有docker,noVNC,docker sshfs插件,vscode。个人觉得配置起来的应用主要可以用来做远程代码编辑和审计环境,远程结伴编程和教学之类的。

文中用到的docker 镜像有:

saturnman/ubuntu-xfce-vnc-code

docker pull saturnman/ubuntu-xfce-vnc-cod

busybox

docker pull busybox

docker插件有:

vieux/sshfs

docker plugin install vieux/sshfs

一、基本网络结构

88ec2f0bbde03544e1d4d682ecfe41d1.png

基本的访问结构如上图所示,通过中间服务器访问远程不同的ssh server上的代码,之后将编辑器界面通过浏览器远程呈现给用户,当然中间服务器和ssh server完全可以就是同一台服务器。

二、配置ssh公钥

为了更加安全和有效管理不同的权限,强烈建议不要使用自己常用的系统的公钥,而且为不同的目标用户设置不同的linux账户,以管理不同的权限。比如纯粹的reviewer和展示、教学等不需要目标用户可以编辑文件,可以配置只读权限就可以。

我在自己的根目录/Users/saturnman/sshkeys下生成新的密钥

ssh-keygen -f id_reviewer_rsa -t rsa

不要设置私钥访问密码,之后将公钥添加到远程ssh server目标用户的authorized_keys文件中,测试一下访问。

ssh -i ~/sshkeys/id_reviewer_rsa code@192.168.0.30

注意:如果是新建authorized_keys文件,一定要将这个文件的权限设置成600,否则ssh本身会出现非常多的问题,无法正常工作。

二、配置docker的sshfs插件

为了要让sshfs插件记住密钥的默认目录,要对其进行配置

1.先停用插件

docker plugin disable vieux/sshfs

2.设置选项

docker plugin set vieux/sshfs sshkey.source=/Users/saturnman/sshkeys/

3.启用插件

docker plugin enable vieux/sshfs

三、配置docker volume

1.创建docker volume

sshcmd

2.测试volume

sudo docker run -it -v codeVolume:/code busybox ls /code

如果没有问题,可以看到远程文件了

207cc086214f6c54226d550318cf478b.png

四、启动docker vnc+vscode镜像

sudo docker run -d  -p 7000:6901 -v codeVolume:/code  -e VNC_PW=123456 saturnman/ubuntu-xfce-vnc-code

其中选项VNC_PW是密码,一般不要设置过于简单

成功启动后就可以从浏览器访问了http://localhost:7000/vnc.html

vscode在系统Application->Development中,打开/code目标,就可以工程代码了。下面是DL明星项目TVM

1800b83db333a8f703ee6f9a9bd33d93.png
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值