快轉到主要內容
  1. 教學文章/

用 NAS 搭設遠端 Linux: Webtop 教學

·3 分鐘· loading · loading · ·
好玩軟體 Linux Webtop
每日拍拍
作者
每日拍拍
科學家 X 科技宅宅
目錄
Warning! 本教學文章需要擁有一台 Synology NAS。

webtop

好想在 iPad 上跑 寫程式/跑Linux 喔
#

自從入手 13 吋 iPad Pro 之後,雖然各方面都很滿意,但總覺得少了點什麼。 iPad Pro 硬體雖然強大,但畢竟不是一台真正的桌機系統,對於程式開發來說還是有些限制。 雖然像 iPad LinuxUTMiSH 這類工具可以在 iPad 上跑 Linux,不過目前只有歐盟用戶可以合法 sideload UTM,台灣用戶想要取得較好的效能,幾乎只能靠越獄。

所以,有沒有更優雅的方式? 其實透過網路遠端操作 Linux,利用 Webtop 就能輕鬆實現這個願望!

什麼 Webtop?
#

Webtop 是一種「Web 桌面環境」(Web Desktop Environment),讓你可以直接在瀏覽器中,像操作一般桌面作業系統(例如 Windows 或 Linux)一樣,遠端操作和管理伺服器。 常見的 webtop 解決方案通常會把完整的 Linux 桌面環境打包成 Docker container,你只要啟動 container,再用瀏覽器連線,就能操作。

Webtop 有什麼用途?
#

  • 遠端開發:像 VSCode、Terminal 直接在 server 上用。
  • 跨平台桌面:用手機、平板、Mac/Windows 瀏覽器隨時存取你的 Linux 桌面。
  • 輕鬆分享環境:只需分享一個網址,對方就能用瀏覽器進來操作,不需安裝額外軟體。

為什麼要用 webtop?
#

  • 不用安裝 VNC、RDP 或其他遠端桌面軟體,瀏覽器就能搞定。
  • 多人協作、Demo 展示超方便。
  • 能快速體驗不同的桌面環境或軟體。

安裝與部署 Webtop
#

本教學文章假設你擁有一台 Synology 的 NAS,如果沒有的話,原則你也可以用類似的設定用自己的電腦跑 Docker 來架設 Webtop。

安裝 Container Manager
#

  1. 先確認你的 NAS 有安裝 Container Manager

    docker

配置 Docker 使用的硬碟
#

  1. 接下來我們要為遠端 Linux 的Docker 配置硬碟空間

    task_scheduler

  2. 在 File Station 新增兩個資料夾

    • docker 這是我們要安裝Linux 的資料夾(用 Create Folder)
    • data-containers 這是我們要讓 Linux 跟其他設備共用的分享資料夾 (用 Create Shared Folder)

讀取自己的 uid 與 gid
#

  1. 打開 Control Panel 裡面的 Task Scheduler。

    task_scheduler

  2. Create 新增一個任務 Git ID, User 的地方選你自己的使用者帳號。

    Get ID

  3. 在 Schedule 的分頁,選擇不要重複(Do not repeat),之後我們要手動運行。

    Schedule

  4. 在 Task Setting 的分頁則在 Run command 的區域輸入:

    id > /volume1/docker/id.txt
    

    task

  5. 手動按 Run 運行新增的 Get ID 任務後,會在剛剛新增的 docker 硬碟中多出一個檔案 id.txt。下載該檔案打開後,我們要記得裡面兩個數字,分別是 uidgid

透過 Docker 安裝 Webtop
#

  1. 我們先整理一下部署 Webtop 所需要的一些資訊:

    帳號: dailypypy (webtop 的帳號,最好跟你 NAS 使用者的帳號不同)
    密碼: my_password(webtop 的登入密碼,最好跟你 NAS 的密碼不同)
    uid: 1026 (剛剛在 id.txt 裡面的數字)
    gid: 100 (剛剛在 id.txt 裡面的數字)
    連接阜 (http) : 4567 (不需要的話可以不用)
    連接阜 (https): 4568 (有加密,最好用這個)

  2. 有了這些資訊後,我們再次回到 Task Scheduler 然後新增一個任務稱作 Install Webtop ,使用者選 root

    install-webtop

  3. Schedule 排程一樣選擇 Do not repeat,不然你的 webtop 會被反覆重寫。

  4. 在 Task Settings 分頁裡面的 Run command 貼上以下代碼,記得把帳號、密碼、uid、gid、連結阜那些的改成你自己的數字喔。

    docker run -d --name=webtop \
    -e PUID=1026 \
    -e PGID=100 \
    -p 4567:3000 \
    -p 4568:3001 \
    -e TZ=Taiwan \
    -e CUSTOM_USER=dailypypy \
    -e PASSWORD=my_password \
    -e TITLE="Webtop" \
    -e DOCKER_MODS=linuxserver/mods:universal-package-install \
    -e INSTALL_PACKAGES=font-noto-cjk \
    -e LC_ALL=zh_TW.UTF-8 \
    -v /volume1/docker/webtop:/config \
    -v /var/run/docker.sock:/var/run/docker.sock \
    --shm-size="3gb" \
    --restart always \
    lscr.io/linuxserver/webtop
    

    如果想要換不同版本的 Linux 也可以在這邊挑選喜歡的版本喔。

  5. 完成後,手動按 Run 我們的 NAS 就會開始部署這個 Docker 了。

連上 Webtop
#

如果你有使用 Synology 的 Quick connect,你只需要在瀏覽器輸入 https://your_quick_connect_id.synology.me:4568。最後面的數字要記得改成你設定的 https 連結阜喔。

另外要記得,如果你的網路有設置防火墻,最後先連上 VPN 或是允許你的webtop https 連結阜對外,這樣在外面才能連上喔。

相關文章

超好用的本地LLM: Ollama
·6 分鐘· loading · loading
好玩軟體 LLM Ollama
設置和管理 SSH 金鑰
·2 分鐘· loading · loading
SSH
在LLM的時代,為什麽我還要寫部落格?
·3 分鐘· loading · loading
LLM AI Blog
管理秘密環境變數 python-dotenv
·1 分鐘· loading · loading
Python Dotenv
GitHub 指令工具
·2 分鐘· loading · loading
版本控制 Git 指令模式 Github
版本控制軟體 Git - 安裝篇
·3 分鐘· loading · loading
版本控制 Git