1. 程式人生 > >淺析X,novnc,vnc,以及相關軟體的x啟動

淺析X,novnc,vnc,以及相關軟體的x啟動

1.關於開源專案novnc

//下載好的原始碼
import RFB from './core/rfb.js';
//連線vnc
const rfb = new RFB(document.getElementById('screen'), 'ws url');

上面是使用方式,很簡單,而這個websocket的url則是自己在伺服器上啟動的,關於novnc,x11vnc的部署參照這篇

2.關於 Running Dockerized Linux IDE in Windows 這篇部落格

它實現啟動一個gui程式,如vscode,還做了檔案系統的同步等
htop --增強版top
rsync --實現本地主機和遠端主機上的檔案同步(包括本地推到遠端,遠端拉到本地兩種同步方式)
Exiftool --圖片資訊檢視工具
firebase --構建移動應用、提供實時資料儲存和同步、使用者身份驗證等功能的平臺
以上四個都是之外的東西,關注的是他的vscode

思考:
和我之前做的不太一樣,它是把server作為client,而相應的Xserver是在使用者這邊的
DISPLAY這個引數和之前想的不太一樣,之前想簡單了。實質是 “xserver的ip” : “display Num”.“screen Num”

其實是兩部分:
一是真正的x部分
    –啟動一個Xserver,類似於Xvfb,或者xorg
    –啟動一個app,類似於firefox,可以將gui顯示到任意xserver
二是相應的處理工具,putty,ssh,novnc等。例如x11vnc配合novnc等工具。

3.一點靈感

過程中嘗試了很多方法,安裝了tigervnc,桌面程式fluxbox,其它一些別的坑。
實際上都不能解決vscode無法開啟的問題

然後發現一個東西,xterm,因為在mac上嘗試開啟vscode是可以的,並且無display引數,想到可能它做的時候依託開啟它的terminal所在的display,試了下果然是這樣,嘗試開啟,在已經準備好vnc面板的情況下.

xterm -display :1 code 完美開啟!!