by Devin Yang

建立於: 7年前 ( 更新: 2年前 )

由於Mac OS Leopard版之後,Apple已不在內建X11,要求大家使用open source的XQuartz,
所以如果您想在Mac OS上,顯示X client的畫面,記得先安裝Mac OS專用的X11 server:
https://www.xquartz.org/index.html

首先,在MacOS環境開始前,請記得安裝XQuartz,並且記得啟動允許網路連線要打勾哦

這裡,先帶大家一步一步執行
一、授權可連線的Client

xhost + 127.0.0.1

如果您打xhost可以看到有那些clients被授權,如果想完全開放可以打xhost +

xhost +
access control disabled, clients can connect from any host

二、在這裡我使用Ubuntu的image為例,變定環境變數並且進入bash

X=/tmp/.X11-unix && \
docker run --rm  \
-v $X:$X -e DISPLAY=host.docker.internal:0 \
-ti ubuntu bash

三、安裝xeyes

apt-get update&&apt-get -y install x11-apps&&xeyes

四、執行xeyes

xeyes

結果如下:


所以,我們可以弄成一行

X=/tmp/.X11-unix && \
docker run --rm  \
-v $X:$X -e DISPLAY=host.docker.internal:0 \
-ti ubuntu sh -c 'apt-get update&&apt-get -y install x11-apps&&xeyes'

 

 


 

Tags: docker gui docker

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


docker,cli

Docker容器格式化顯示

我覺的如果要寫一些自動化功能,或許能夠格式化的輸出容器內容還滿有用的。以下一些Docker容器格式化顯示指令的參考範例

docker

Docker防毒攻略

最近剛看玩延禧攻略,就想來介紹個MacOS掃毒攻略。 這篇文章,教大家用如何用Docker搞定MacOS掃毒。 簡單介紹,我們如何透過docker使用防毒軟體掃毒。 這裡假定目前我的目錄是在我的家目錄中,所以${PWD}就是目前的所在目錄,會被掛載到container內的scan資料夾。 所以,使用clamscan -r /scan/,時就能掃描所有的擋案囉,加上-r的參數會使用遞迴的方式一層一層的進入子目錄掃描。

docker

D-Laravel上.env及docker-compsoe小教室

本文介紹,當我們使用D-Laravel的.env載入多個yml檔時,為何docker-compose ps官方指令無法列出所有使用中的服務。 但在D-Laravel上的./console ps確能正常顯示,那官方的docker-compose指令因如何使用才能有相同的效果呢?