V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
leishi1313
V2EX  ›  程序员

2022 年,怎样才是家用远程开发的正确姿势?

  •  
  •   leishi1313 · Feb 18, 2022 · 7054 views
    This topic created in 1530 days ago, the information mentioned may be changed or developed.

    一点背景,这两年一直是手持 M1+NUC8 ,然后在 NUC8 上跑VS Code Server进行开发的。最近新配了台 AMD Yes !作其他低频用途。但是放着这么强的 U 不做开发有点浪费,于是琢磨着怎么在 Win 上搭建远程开发的环境,折腾了 2 天还是没有满意方案,想问问大家有什么想法?到目前为止,折腾过

    1. Win 装 WSL 2 ,然后

      • 端口转发:PowerShell 端口转发脚本没成功,而且指定端口转口限制比较大

      • 把 Win 的 SSH Server 的 SHELL 换成 WSL 2 的 bash:ssh 成功,但是 VS code/Jetbrain 的 SSH remote 配置都没跑通,VS code 是因为 websocket 没连上,猜测还是需要端口转发,喷射大脑报错给了一堆 log 文件,也没细看

    2. Win 装虚拟机,然后端口转发?应该可行,作为备选,但还是不够灵活

    3. 原生的远程开发,JetBrains 家的 Gateway 应该可以,但是现在只支持 Linux 。Fleet 又太早了,现在根本没什么功能

    4. Win 机装双系统,体验可能最好,但是因为 Win 机没装键鼠显示器,每次切换系统还要从其他地方拔下来。IPMI/KVM 或者第二电源键应该是可以的,但是要折腾硬件 /另外花销

    综上,还有什么值得尝试的方案吗?或者大家都是怎么在家远程开发的?

    Supplement 1  ·  Feb 19, 2022
    初步试下来 hyper-v 的 external switch 不错,我再深度用用
    22 replies    2022-02-19 23:04:17 +08:00
    lscho
        1
    lscho  
       Feb 18, 2022   ❤️ 1
    win 就别想了。把 amd 换成 linux ,一切都很美好
    BeautifulSoap
        2
    BeautifulSoap  
       Feb 19, 2022
    lz 你可以直接创建个 Linux 的 Hyper-V 虚拟机,虚拟交换机选择 "外部网络" 这样你虚拟机就能直接拿到局域网 ip ,之后你想远程怎么玩就怎么玩了
    mawerss1
        3
    mawerss1  
       Feb 19, 2022
    虚拟机 运行 tailscale
    initd
        4
    initd  
       Feb 19, 2022 via Android
    考虑网络环境,就国外 2C 2G VPS

    本地主机 用 Cloudflared Tunnel 映射到公网
    使用参考 argo.moz.one ingress.moz.one

    macOS
    cdr/code-sever + 标准账户 + RemoteControl(兼容 VNC)

    ubuntu
    cdr/code-server + VNC

    没用 win 开发

    开机
    华硕路由器 WOL ,要求电脑上一次正常关机
    之前有公网 IP 可以用华硕 DDNS ,非常好用,直接 CNAME
    现在没有,可以用猫盘 /NAS 等常启设备运行 cloudflared ,
    反代局域网 IP 即可。

    远程开发,不行
    远程办公,行
    initd
        5
    initd  
       Feb 19, 2022 via Android
    最近安装 System76 OS ,发现有 HiDPI 支持,而且理念是专注工作,确实是专注的设计,可以试试。
    ericguo
        6
    ericguo  
       Feb 19, 2022
    键盘鼠标屏幕不是都在本地么?键盘鼠标事件到远端服务器兜一圈回来都是有延时的啊。。

    远程开发的正确姿势就是是不上班在家开发,楼主已经做到了啊!
    documentzhangx66
        7
    documentzhangx66  
       Feb 19, 2022
    1.能用洋垃圾服务器,一定要洋垃圾。

    2.如果工作内容并不是以高性能为主,服务器全上虚拟化,比如 VMware 的 ESXi 。

    3.服务器放公司。

    4.开发环境、测试环境、开发用数据库、开发用仓库等等,都放在服务器里。

    5.再搞台便宜主机,拿来当备份机。一定要做好自动备份。

    6.公司里的电脑,以及家里的电脑,买最低配置,当成跳板机,用来连接到服务器,显卡要能支持多显示器输出的。显卡大概是 500 多元二手的,有 4 个显示输出。

    7.用虚拟局域网之类的软件,把家里的电脑、公司电脑、公司服务器,组成一个虚拟局域网。
    kwanzaa
        8
    kwanzaa  
       Feb 19, 2022
    WireGuard
    lemontv
        9
    lemontv  
       Feb 19, 2022   ❤️ 1
    Win 装虚拟机,用自带的 hyper-v 就行,改一下网络配置,获取一个本地 IP ,不需要转发端口。

    https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/
    leighton
        10
    leighton  
       Feb 19, 2022   ❤️ 2
    如上所说 Hyper-v 加 External Switch 是最佳方案

    WSL 2 也是可以获取外部 IP 的,具体看我的帖子 /t/831048 但是这是微软尚未公布的特性,据我使用下来还是有 bug ,比如开机时间过长 WSL 2 就会切回去和宿主 win 共享一个 IP ,暂时还没找到原因,不建议使用
    dayeye2006199
        11
    dayeye2006199  
       Feb 19, 2022
    单系统 linux ,安装 tailgate ,vs code remote development 套件什么问题都没有,最佳体验。
    你台式机有显卡之类的不要折腾 windows 上的虚拟机了,单系统 linux 解决你所有问题。
    MoeMoesakura
        12
    MoeMoesakura  
       Feb 19, 2022
    wsl2 端口转发你直接用 Gost/Brook 之类专门转发的工具
    (不过建议还是 Ubuntu Server 直接用)
    wzxlovesy
        13
    wzxlovesy  
       Feb 19, 2022 via Android
    我在用 proxmox ,上面建个 win vm 运行一些桌面程序,其他开发环境都是 containe
    wzxlovesy
        14
    wzxlovesy  
       Feb 19, 2022 via Android
    *container
    hm20062006ok
        15
    hm20062006ok  
       Feb 19, 2022 via iPhone
    3.getway 我用过,sever ide 上的 md 文件不能在本地 ide 渲染。拖放文件进本地 ide 后不能自动上传到 sever 。vs code remote 好点,没上面的问题
    shiganwuguo
        16
    shiganwuguo  
       Feb 19, 2022 via Android
    Nomachine
    seakingii
        17
    seakingii  
       Feb 19, 2022
    todesk,向日葵,不整那些有的没的
    knives
        18
    knives  
       Feb 19, 2022
    你的开发环境不依赖 Linux 的话,可以直接在 Windows 上安装 OpenSSH ,远程直接用 VSCode Remote 就能解决大部分开发需求。
    yangzzzzzz
        19
    yangzzzzzz  
       Feb 19, 2022
    俺一个 mba 走天下,实在性能不够了才开 win 。不过 win 开发环境装好到现在没用过几次
    leafre
        20
    leafre  
       Feb 19, 2022
    折腾
    t123yh
        21
    t123yh  
       Feb 19, 2022 via Android
    装个 Ubuntu ,然后配好 xrdp ,从 mac 上用 rdp 连就行了
    neohob
        22
    neohob  
       Feb 19, 2022 via iPhone
    zerotier 不行吗?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3230 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 70ms · UTC 13:24 · PVG 21:24 · LAX 06:24 · JFK 09:24
    ♥ Do have faith in what you're doing.