程序员必看!VSCode Remote+cpolar让Mac和Linux无缝协作,代码随身走

程序员必看!VSCode Remote+cpolar让Mac和Linux无缝协作,代码随身走

文章目录

前言

作为全栈开发者,你是否受够了在公司MacBook和家里Windows PC间同步开发环境的痛苦?VSCode Remote-SSH插件彻底终结了这种折腾——只需一次配置,就能让本地编辑器直接访问远程服务器的文件系统和终端,无论是修改Node.js后端还是调试Python脚本,都像在本地操作般流畅。我司前端团队通过这种方式,成功实现设计师用MacBook编辑React组件,后端工程师用Linux工作站调试API,代码实时同步且环境完全一致。

最让我惊喜的是VSCode Remote的端口转发功能。上次开发微信小程序时,后端服务运行在阿里云服务器,通过Remote-SSH转发3000端口后,本地IDE直接访问localhost就能调试接口,省去了配置Nginx反向代理的麻烦。而WSL2环境下的Docker容器,更是可以通过这种方式暴露给局域网其他设备,实现"Windows编码+Linux运行"的混合开发模式。上周重构用户认证模块时,我同时在公司电脑和家里服务器上测试不同Node版本的兼容性,Remote-SSH的多窗口管理让这种并行开发效率提升至少60%。

但这种工作流存在一个致命短板:当你不在公司网络时,就无法连接内部开发服务器。上个月在客户现场支持时,需要紧急修复生产环境的bug,却因无法访问办公室GitLab而不得不从头搭建开发环境。这种"网络围墙"不仅降低了工作灵活性,更在突发情况下增加了业务风险。

cpolar内网穿透技术完美解决了这一痛点。通过在开发服务器部署cpolar,我们将SSH服务映射为公网地址,现在即使在星巴克也能通过VSCode连接公司内网的代码仓库。最关键的是,cpolar支持TCP协议穿透,配合VSCode的Remote-SSH配置,可以直接使用类似ssh -p 2233 [email protected]的命令连接,无需修改本地SSH config。上周六在家处理线上问题时,我通过这种方式10分钟内就完成了hotfix的提交和部署,客户甚至没察觉我是远程办公。

更值得一提的是cpolar的固定TCP地址功能。付费套餐提供的专属端口号让我们可以将常用服务器地址固化在VSCode配置中,避免了免费版随机端口每天变化的麻烦。现在整个团队都养成了"代码不落地"的工作习惯——所有项目文件都保存在服务器,本地只需要浏览器和VSCode两个工具,真正实现了"轻装上阵"的开发体验。

1.WSL 环境下网络诊断

没有安装wsl的家人们,可以参考这个教程哦:https://www.cpolar.com/blog/exploring-the-linux-world-a-complete-guide-to-installing-wsl-on-window

首先搜索Ubuntu,打开:

image-20250718175143634

查看你的ip地址:

ip addr 
微信图片_2025-07-08_165833_095

检查是否可以从当前机器访问目标 IP 为 172.20.54.177 的服务器上的 SSH 服务(端口 22):

telnet 172.20.54.177 22
aaca3e53b02bf311fd3cf7d31c8d6214

使用 SSH 协议,以用户名 michael 尝试连接到 IP 地址为 172.20.54.177 的服务器,并且指定使用端口 22 进行连接:

ssh [email protected] -p 22
在这里插入图片描述

如何在 Ubuntu 上启用 SSH?

sudoaptinstall openssh-server 
297b582cf27faf5a2e04bb819448538f

2.安装cpolar实现随时随地开发

cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。配合 VSCode 的 Remote - SSH 插件,你可以从任何设备访问自己的完整开发环境。

❤️以下是安装cpolar步骤:

官网在此:https://www.cpolar.com

点击免费注册注册一个账号,并下载最新版本的Cpolar:

52de967930cc2da6f2648c0745348fbc

登录成功后,点击下载Cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

ca089c8af6052c9ea7d3a6c99145c40d

Cpolar安装成功后,在浏览器上访问http://localhost:9200,使用cpolar账号登录,登录后即可看到Cpolar web 配置界面,结下来在web 管理界面配置即可。

f7247a089a6cb102c9fcbec5d933004d

3.配置公网地址

通过配置,你可以在本地 WSL 或 Linux 系统上运行 SSH 服务,并通过 Cpolar 将其映射到公网,从而实现从任意设备远程连接开发环境的目的。

  • 隧道名称:可自定义,本例使用了:VsCode,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:172.20.54.177:22
  • 端口类型:随机临时TCP端口
  • 地区:China Vip
在这里插入图片描述

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用任意一个地址在终端中访问即可。

  • tcp 表示使用的协议类型
  • 2.tcp.vip.cpolar.cn 是 Cpolar 提供的域名
  • 12825 是随机分配的公网端口号
4d486290e5945bc86c8e72e74ec4c6d8

通过 Cpolar 提供的公网地址和端口,使用 SSH 协议从本地 Windows 系统连接到远程的 Ubuntu WSL2 环境,并成功登录。

ssh [email protected] -p 12825
image-20250709152514252

4.VsCode 远程连接开发环境

无论你是在 Windows、macOS 还是 Linux 上工作,Remote - SSH 让你可以连接到任何支持 SSH 的系统(Linux 或 macOS),提供了一致的开发环境。通过在相同环境中开发和部署,可以减少“在我的机器上能运行”的问题。

打开 VS Code,按下 Ctrl + Shift +X(或点击左侧活动栏中的扩展图标),进入扩展市场。在搜索栏中输入关键词 “Remote - SSH”,在搜索结果中找到 “Remote - SSH” 插件,点击 Install 按钮进行安装。

image-20250709155543326

安装完成后,左侧资源管理器下方会出现一个新的远程资源管理器图标(或直接使用快捷键 Ctrl+Shift+P 输入 “Remote-SSH” 相关命令),即可开始配置并连接远程服务器。点击小加号就可以连接远程服务器。

image-20250709105126774

点击小加号后,输入框会弹出一个输入框,这个输入框用于输入 SSH 的连接命令。

ssh [email protected] -p 12825
image-20250709112733691

然后软件的右下角会出现提示信息,点击 “打开配置” 打开配置文件。

image-20250709112846876
  • Host:这是一个用户定义的别名,用于指代远程主机。
  • HostName:指定远程主机的实际地址或主机名。
  • User:指定连接到远程主机时使用的用户名。
  • Port:指定 SSH 连接使用的端口号。
image-20250709113032412

此时,你应该能在左侧资源管理器的 SSH 目标列表 中看到新增的 Ubuntu 主机项。如果未自动显示,可以点击上方的刷新按钮进行手动更新。确认出现目标主机后,点击主机名右侧的连接按钮,即可开始远程连接到该 Ubuntu 系统。

image-20250709113537751

点击连接后,选择Linux。

image-20250709114045069

然后输入远程的主机密码,按下回车。

image-20250709113938055

连接成功后,出现的字样。

image-20250709114236481

点击右下角的小三角,再点击“TERMINAL(终端)”,可以看到 Ubuntu 的终端界面,在这里可以使用命令行操作 Ubuntu。

image-20250709114534199

输入:

code .
image-20250709114711378

新弹出的页,再次输入主机密码。

image-20250709114754775

这样就可以随时随地编写代码啦。

image-20250709114835858

5.保留固定TCP公网地址

使用cpolar为其配置TCP地址,该地址为固定地址,不会随机变化。

image-20250718144234700


选择区域和描述:有一个下拉菜单,当前选择的是“China VIP”。
右侧输入框,用于填写描述信息。
保留按钮:在右侧有一个橙色的“保留”按钮,点击该按钮可以保留所选的TCP地址。
列表中显示了一条已保留的TCP地址记录。

  • 地区:显示为“China VIP”。
  • 地址:显示为“20.tcp.vip.cpolar.cn:14220”。
image-20250718145400598

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道VsCode,点击右侧的编辑

image-20250718145515243

修改隧道信息,将保留成功的TCP端口配置到隧道中。

  • 端口类型:选择固定TCP端口
  • 预留的TCP地址:填写保留成功的TCP地址

点击更新

01914c872fa537e9807e4417e239742f

创建完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的TCP地址。

05CEA515-CAB0-4f9d-AAC5-1ECDDBF23135

最后测试一下固定的地址是否好用,测试命令:

ssh [email protected] -p 14220
image-20250709152138183

这样,你可以把这个地址发给你的朋友们,这样他们就可以随时随地使用Cpolar来共享开发,即使在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。配合 VSCode 的 Remote - SSH 插件,可以从任何设备访问自己的完整开发环境。

总结

使用 VSCode 通过Remote -SSH 连接到运行在 WSL 中的 Linux 环境,就像是给你的开发工作打开了一扇通往新世界的大门。这样一来,你就可以在 Windows 的舒适环境中享受 Linux 的强大功能啦!无论是编辑代码、调试程序还是运行脚本,都能感受到流畅又高效的体验。想象一下,在熟悉的 Windows 系统中轻松切换到 Linux 环境,就像在家里的客厅和书房之间自由走动一样方便。这种无缝衔接的感觉,简直不要太棒哦!✨

感谢您对本篇文章的喜爱,有任何问题欢迎留言交流。cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

在远程办公成为常态的今天,VSCode Remote-SSH与cpolar的组合不仅提升了开发效率,更重新定义了程序员的工作方式。当你的开发环境能够突破物理网络限制,灵感和生产力才能真正实现"无缝衔接"。

cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

Read more

Flutter 组件 pos 适配鸿蒙 HarmonyOS 实战:ESC/POS 硬件协议通信,构建高性能零售收银与物联网打印架构

Flutter 组件 pos 适配鸿蒙 HarmonyOS 实战:ESC/POS 硬件协议通信,构建高性能零售收银与物联网打印架构

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 pos 适配鸿蒙 HarmonyOS 实战:ESC/POS 硬件协议通信,构建高性能零售收银与物联网打印架构 前言 在鸿蒙(OpenHarmony)生态迈向专业收银终端、涉及智慧零售设备、数字化仓储标签打印及餐饮自助化服务的背景下,如何实现与热敏打印机(Thermal Printer)等硬件设备的底噪、高可靠通讯,已成为决定商业应用“交易闭环效率”的关键。在鸿蒙设备这类强调硬件直控能力(Raw IO)与实时系统响应的环境下,如果应用依然依赖图形化的截屏打印或低效的中间件转发,由于由于图像编解码的巨大算力消耗,极易由于由于“内存瞬时溢出”导致收银终端在高峰期发生严重卡顿。 我们需要一种能够直接生成热敏指令流(Hex Commands)、支持多种传输通道(蓝牙/Wi-Fi/USB)且符合行业标准(ESC/POS)的高性能控制方案。 pos

By Ne0inhk
OpenClaw下载安装配置|Windows安装流程|macOS 安装流程|Telegram 集成使用|飞书集成使用|常见坑和注意事项保姆级教程

OpenClaw下载安装配置|Windows安装流程|macOS 安装流程|Telegram 集成使用|飞书集成使用|常见坑和注意事项保姆级教程

🦞 OpenClaw 保姆级部署教程:Windows/macOS 全平台安装 + Telegram/飞书双端集成实战 作者:猫头虎AI | 阅读时间:约 25 分钟 | 难度:⭐⭐⭐☆☆ 因为🦞实在太火了,加上看多了AI相关的东西搞得人很焦虑,所以还是打算自己部署一下找点自我安慰吧🤷。先不说我能用来干啥,就想探一探它这么火的原因😮‍💨 在Windows中折腾了一天,终于算是初步跑通了,并配置了 Telegram 和 飞书 两个 channel。本文将完整记录从环境准备到多平台集成的全流程,帮你避开我踩过的所有坑。 OpenClaw 是一个适用于任何操作系统的 AI 智能体 Gateway 网关,支持 WhatsApp、Telegram、Discord、飞书等多种聊天应用。 📋 阅读目录 * 🦞 OpenClaw 保姆级部署教程:Windows/macOS 全平台安装 + Telegram/飞书双端集成实战 * 安装前准备

By Ne0inhk
时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读

时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读

时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读 前言 大数据与物联网技术飞速发展的今天,时序数据呈现出爆发式增长的态势,从工业传感器的实时监控数据到智能设备的运行日志,从金融交易的时序记录到新能源汽车的工况数据,时序数据已成为企业数字化转型的核心资产,选择一款合适的时序数据库,直接关系到数据存储效率、分析能力与业务价值挖掘。 本文将从时序数据库的核心需求出发,结合大数据场景特点,通过与国外主流产品的对比分析,重点阐述 Apache IoTDB 在选型中的核心优势。 Apache IoTDB 介绍 Apache IoTDB 是由中科院软件所主导研发的开源时序数据库,专为物联网与工业大数据场景设计,以高性能、轻量级、易扩展为核心特点,通过三层数据模型与多级存储引擎,实现对海量时序数据的高效存储、快速查询与全生命周期管理,已成为国产化时序数据管理的标杆产品 ✅极致的性能表现:采用 TsFile 存储结构与多维索引体系,单节点每秒可处理数百万数据点写入,复杂聚合查询响应达毫秒级,结合差值编码等压缩算法,数据压缩

By Ne0inhk
Linux《进度条》

Linux《进度条》

在之前的Linux基础开发工具当中我们已经了解了vim、gcc、makefile等基本的开发工具,那么有了这些开发工具我们就可以来实现我们Linux旅程当中的第一个程序——进度条。相信通过该项目的实现能让你对vim等开发工具更加的熟悉。一起加油吧!!! 1.补充知识回车与换行  在实现进度条的项目之前我们先要来了解关于回车和换行的基础补充知识,在了解之后才能让接下来的项目的编写更加的顺畅。 首先我们要了解的是回车和换行有什么区别,此时你可能就会疑惑这两个实现的效果不是一样的吗?我们在点击回车的时候不就是实现了换行了吗? 其实这两个实现的效果是不同的,只不过在现代的计算机当中基本将这两个概念不进行区分了,但在上个实际使用的老式打字机上换行自是将对应的纸向下移动,而要将实现回车还需要将指针移动回起始位置。 那通过以上的示例就可以理解在现代的计算机当中回车其实是 换行+回车 的,通过以下的老式键盘就可以看出这一特点 其实在之前在C语言当中使用的\n就是本质上就是实现了换行+回车的功能,\r实现的就是回车的功能。  2.练手小程序——倒计时 以上我

By Ne0inhk