VM虚拟机部署code-server服务+tailscale内网穿透,实现随处coding

news/2024/7/9 22:59:14 标签: postgresql, 数据库

1.Linux下安装code-server

Releases · coder/code-server (github.com)icon-default.png?t=N7T8https://github.com/coder/code-server/releases先去发布页面查看最新的code-server版本,下载命令示例:

wget https://github.com/coder/code-server/releases/download/v4.22.1/code-server_4.22.1_amd64.deb 

 下载完成之后,实用dpkg安装

sudo dpkg -i code-server_4.22.1_amd64.deb    

 安装完成之后,我们需要先运行一次code-server,生成一些配置文件,启动后过一会ctrl+c结束掉

code-server

然后我们去编辑配置文件

vim ~/.config/code-server/config.yaml 

 编辑内容如下

bind-addr: 0.0.0.0:8888   #必须设置为0.0.0.0:接上你想开放的端口
auth: password   #这个是网页的验证方式
password: ******   #配置你的
cert: false

2.screen隐藏进程

安装完code-server之后,我们发现它一直会在终端运行,这怎么办呢,我们可以用screen命令来隐藏他的进程,先ctrl+c结束掉code-server,安装screen命令

 sudo apt install screen    

接着可以screen -h查看一下他的用法,我们主要涉及到的是 -S,-R,-ls,ctrl+a+d这几个操作

先创建一个code-server专属的终端

screen -S code

 然后我们会进入一个新的终端,在里面运行code-server,然后退出:ctrl+a+d(先按住ctrl+a,再按下d)

如果我们想回去code-server终端,可以先查看一下他的编号

screen -ls

 然后使用-R命令回去

screen -R 15863 #这个编号是自己查询到的

3.tailscale内网穿透

Tailscale · Best VPN Service for Secure Networksicon-default.png?t=N7T8https://tailscale.com/

tailscale是一个很好用的内网穿透工具,仅需要简单安装和登录,就能搭建属于你的几个远程设备的局域网

安装配置流程如下:

添加源:

curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list

 更新apt,安装

sudo apt-get update
sudo apt-get install tailscale

 启动:第一次会弹出一个网址,浏览器输入那个网址后可以登录账号,然后设备可以分配到IP,也可以在网站中为你的设备设置静态的ip

sudo tailscale up

 查看IP

tailscale ip -4

 停用

sudo tailscale down

接着我们在其他的设备安装打开tailscale,就能远程访问我们的code-server了,如果和VM在一个局域网中,也可以内网直接用虚拟机的静态IP+端口直接访问,速度更快

4.启动脚本

 这套操作有点麻烦,不想每次开机后都开启一遍tailscale和进入screen启动code-server,想VM开机即用的话,可以写成一个脚本code-poweron.sh,放在根目录下开机后执行即可

#!/bin/bash
sudo tailscale up
screen -dmS code bash -c 'code-server'

也可以设置开机自动执行,zsh可以改为~/.zprofile

echo "/home/ljj/code-poweron.sh" >> /home/ljj/.bash_profile


http://www.niftyadmin.cn/n/5480598.html

相关文章

Brno Urban 数据集

简介 提供了来自四个WUXGA摄像机、两个3D激光雷达、惯性测量单元、红外相机具有厘米级精度的差分RTK GNSS接收器的数据350多公里的行驶记录,在捷克共和国布尔诺及其周边地区记录的城市数据集多样化的环境——从高速公路到农村道路,从密集建筑区到树林&a…

Vue3报错:‘defineProps‘ is not defined no-undef

解决方法 在package.json中添加 "vue/setup-compiler-macros": true 记得在上面的 "node": true 后面加一个逗号 "eslintConfig": {"root": true,"env": {"node": true,"vue/setup-compiler-macros": t…

jquery按回车切换下一个文本框

/** *按回车切换下一个文本框 *param field *param event *returns Boolean *οnkeypress"return handleEnter(this,event)" */ function handleEnter(field,event){ var keyCode event.keyCode ? event.keyCode : event.which ? event.which :event.ch…

制作一个RISC-V的操作系统十-Trap和Exception(流 mtvec mepc mcause mtval mstatus trap完整流程)

文章目录 流mtvecmepcmcausemtvalmstatustrap 初始化trap的top half(硬件完成)trap的bottom half(软件完成)从trap返回代码实现 流 控制流:程序控制的执行流 trap分为中断和异常 mtvec base:存储trap入…

浏览器滚动条样式终极方案

首先各个浏览器滚动条保持统一是不可能的,因为浏览器不支持大多数滚动条样式属性 从支持可调整的角度来看,我们一般选择 保持chrome样式,其他浏览器样式使用默认效果保持chrome、火狐样式一致,其他浏览器样式使用默认效果 所以这…

liunx环境变量学习总结

环境变量 在操作系统中,环境变量是一种特殊的变量,它们为运行的进程提供全局配置信息和系统环境设定。本文将介绍如何自定义、删除环境变量,特别是对重要环境变量PATH的管理和定制,以及与环境变量相关的函数使用。 自定义环境变…

LeetCode-最大平均值和的分组

每日一题 今天做的是一道动态规划的问题,还需要用到前缀和。 题目要求: 给定数组 nums 和一个整数 k 。我们将给定的数组 nums 分成 最多 k 个非空子数组,且数组内部是连续的 。 分数 由每个子数组内的平均值的总和构成。 注意我们必须使…

OpenHarmony分布式软总线API调用测试工具 softbus_tool使用说明

softbus_tool 是 OpenHarmony 分布式软总线 API 调用测试工具,文件结构如下图所示。 softbus_tool 能够将软总线 interfaces 目录下的一些常用接口集中起来,供设备间搭建一些场景时使用(比如设备绑定、BR 组网,BLE 组网&#xff…