Docker服务器的图形显示方案
問題描述:一般docker實操時都是作為服務器,以字符方式交互,非常不方便。本人嘗試各種圖形解決方案,最終找到完美方案。
最初本人嘗試過VNC和SSH方式,最終被否定了。1, 本來docker服務器是很小的,但下載了VNC ?SSHD服務器和全套的窗口管理器后變得很大。2,在docker服務器中運行窗口管理器違背了作了服務器要求簡單的初衷。3, 存在不完全兼容的問題,配置復雜。
后來想到LIUNX的X WINDOW系統本來就是C-S模式的,完全可以在服務器端執行程序的計算部分,將程序的顯示部分放在圖形終端上。以下只講結果,不講過程中的種種坑。(我是搞了好久才最終成功的,唉!!時間,我的時間啊!!)
?環境描述:
1,docker服務器為ubuntu14.4, 沒有桌面環境------主機A ? IP:172.17.0.2
2,圖形終端ubuntu16.04,全套桌面環境--------------主機B ? IP:172.17.0.1
概念描述:
主機A是服務器,但在X WINDOW模型中是X CLIENT。
主機B是遠程終端,作為圖形顯示用,但在X WINDOW模型中是X SERVER。
操作如下:
1,主機A,root@6e1ce93e82b1:/# export DISPLAY=172.17.0.1:0.0 ? ? ? 意思是圖形輸出重定向到主機B,缺省為DISPLAY=:0.0
2,主機B,sudo gedit /etc/lightdm/lightdm.conf ? ? ?增加一行 ? ?xserver-allow-tcp=true
3,主機B,sudo systemctl restart lightdm ? ? ? ? ? ? ??
4,主機B,netstat|grep tcp ? ?應有如下類似的一行 “?tcp ? ? ? ?0 ? ? ?0 172.17.0.1:x11 ? ? ? ? ?172.17.0.2:49672 ? ? ? ?ESTABLISHED”
5,主機B, ?xhost ?+ ? ? ? ? ? ? ? ?注意加號前應有空格
6,主機A,root@6e1ce93e82b1:/# xclock ? ? ? ? ? ? ? ? ? ? ? 此時在主機B上可以看到一個在運行中的時鐘圖形
至此完成!
轉載于:https://www.cnblogs.com/lijinze-tsinghua/p/8686272.html
總結
以上是生活随笔為你收集整理的Docker服务器的图形显示方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CountVectorizer,Tf-i
- 下一篇: Django在admin.py中设置da