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

news2024/11/16 22:53:50

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.coloradmin.cn/o/1574908.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

24考研-东南大学916经验贴

文章目录 一、个人情况二、初试备考经验1.政治 67,客观382.英语 60,客观大概40左右3.数学 136,客观应该满分4.专业课 数据结构计网 114小分不清楚 三、复试备考经验笔试:C面试复试流程 附一下成绩单: 一、个人情况 本…

【学习】注意力机制(Attention)和 自注意力机制(self-Attention)

参考B站:09 Transformer 之什么是注意力机制(Attention) 1. 注意力机制(Attention) 红色的是科学家们发现,如果给你一张这个图,你眼睛的重点会聚焦在红色区域 人–》看脸 文章看标题 段落看…

Maven插件打fatjar的一些技巧

前言 最近做项目,Java实际上一般情况也不用fatjar,毕竟CICD都是流水线构建,不过在预研的过程中,使用fatjar可以内置manifest的main类直接启动,就很方便,尤其是在服务器运行环境。实际上golang还是很方便的…

倒计时】2024年全国大学生英语竞赛(附ABCD类历年真题+答案解析+24押题卷

倒计时】2024年全国大学生英语竞赛(附ABCD类历年真题答案解析24押题卷 全国大学生英语竞赛(NECCS)是我国目前规模较大、参与人数众多的全国性大学生英语综合能力竞赛,在我国大学英语教学改革不断发展和大学就业日趋严峻的形势下&a…

SpringCloud Alibaba Sentinel 规则持久化

一、前言 接下来是开展一系列的 SpringCloud 的学习之旅,从传统的模块之间调用,一步步的升级为 SpringCloud 模块之间的调用,此篇文章为第十七篇,即使用 Sentinel 实现规则持久化。 二、概述 从前面我们做的实验可知,…

Java实现二叉树(上)

1.树型结构 1.1树型结构的概念 树是一种 非线性 的数据结构,它是由 n ( n>0 )个有限结点组成一个具有层次关系的集合。 把它叫做树是因为它看 起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的 1.2树型结构的特点…

能强优品木业提供高层建筑模板施工方案

在现代城市化进程中,高层建筑的兴建成为了建筑行业的一大重点。与普通建筑相比,高层建筑模板施工方案的制定需更加严谨周密,确保工程质量和施工安全。作为专业的建筑模板生产厂家,贵港市能强优品木业有限公司凭借25年丰富经验,为高层建筑模板施工提供了优质高效的解决方案。 首…

【Java基础】面试题汇总

Java基础面试题1. JVM vs JDK vs JRE 2. 什么是字节码?采用字节码的好处是什么?3. 为什么说 Java 语言“编译与解释并存”?4. AOT 有什么优点?为什么不全部使用 AOT 呢?5. Java 和 C 的区别?6. Java 中的基本数据类型&#xff1…

炎症性肠病和原发性胆汁性胆管炎之间的共同遗传结构(文献)

Investigating shared genetic architecture between inflammatory bowel diseases and primary biliary cholangitis - ScienceDirect 炎症性肠病(IBD)是一组慢性免疫介导的胃肠道特发性炎症,有两种形式,包括克罗恩病&#xff0…

Vue使用高德地图

1.在高德平台注册账号 2.我的 > 管理管理中添加Key 3.安装依赖 npm i amap/amap-jsapi-loader --save 或 yarn add amap/amap-jsapi-loader --save 4.导入 AMapLoade import AMapLoader from amap/amap-jsapi-loader; 5.直接上代码,做好了注释(初始…

163 Linux C++ 通讯架构实战17,本地套接字整理对比,IPC:pipe,fifo,mmap,信号,本地套

IPC: Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相互访问,要交换数据必须通过内核,在内核中开辟一块缓冲…

【C语言】——指针八:指针运算笔试题解析

【C语言】——指针八:指针运算笔试题解析 一、题一二、题二三、题三四、题四五、题五六、题六七、题七 一、题一 //程序输出结果是什么 int main() {int a[5] { 1,2,3,4,5 };int* ptr (int*)(&a 1);printf("%d, %d", *(a 1), *(ptr - 1));return…

基于JAVA+SSM+微信小程序+MySql的图书捐赠管理系统设计与实现(前后端分类)

一、项目背景介绍: 在当今社会,图书捐赠是一种普遍而有益的行为,旨在促进阅读、教育和知识传播。图书捐赠可以帮助改善教育资源不足的地区、学校和社区的阅读环境,提供更多的学习机会和知识获取途径。随着互联网和移动技术的发展&…

Java 面试宝典:Redis 的线程模型是怎么样的?

大家好,我是大明哥,一个专注「死磕 Java」系列创作的硬核程序员。 本文已收录到我的技术网站:https://www.skjava.com。有全网最优质的系列文章、Java 全栈技术文档以及大厂完整面经 Redis 的线程模型其实是分两块的: Redis 6.0 …

PostgreSQL:所有支持的数据类型及建表语句实例

哈喽,大家好,我是木头左! 一、引言 在当今这个数据驱动的时代,数据库已经成为了企业和个人不可或缺的工具。而在众多数据库产品中,PostgreSQL以其强大的功能和高度的可扩展性,受到了越来越多开发者的青睐。…

FreeRTOSFreeRTOS列表和列表项

FreeRTOS列表和列表项 今天继续跟着正点原子学习FreeRTOS列表和列表项的内容。列表和列表项这个知识点用到了C语言链表的知识点。所以必须对C语言中的链表这个数据结构才能更好的理解这部分内容。TIPS:正点原子这节课内容讲的特别好,强烈推荐&#xff1…

《QT实用小工具·十八》高亮发光按钮控件

1、概述 源码放在文章末尾 该项目实现了高亮发光按钮控件 可设置文本,居中显示。可设置文本颜色。可设置外边框渐变颜色。可设置里边框渐变颜色。可设置背景色。可直接调用内置的设置 绿色、红色、黄色、黑色、蓝色 等公有槽函数。可设置是否在容器中可移动&#…

2024 抖音欢笑中国年(二):AnnieX互动容器创新玩法解析

本文基于24年抖音春节活动业务背景,介绍了字节跨端容器AnnieX在游戏互动套件上的探索,致力于提升容器在游戏互动场景的优化能力。 业务背景 AnnieX作为字节一方游戏统一容器,服务字节内部电商、直播、UG等跨端场景业务。在字节一方游戏互动场…

YOLOv8模型剪枝实战:Network Slimming网络瘦身方法

课程链接:YOLOv8模型剪枝实战:Network Slimming网络瘦身方法_在线视频教程-CSDN程序员研修院 YOLOv8是一个当前非常流行的目标检测器,本课程使用Network Slimming(网络瘦身)剪枝方法对YOLOv8进行模型剪枝,…

springboot国际化多语言

1,新建国际化多语言文件 在resources目录下新建 messages.properties 其他语言的文件 编辑messages.properties文件,下方从text切换到Resource Bundle ,即可对照着编辑多语言文件 (如果没有找到Resource Bundle,先在settings->plugins中安装Resource Bundle Editor) 2,配…