Veja o link em particular:
DISPLAY=$IPADDR:$DISP_NUM
Eu pareço ter uma queda pela barba do iaque.
Eu tenho o XQuartz 2.7.7 (xorg-server 1.15.2) em execução no meu Mac com o Yosemite. Eu posso rodar xeyes localmente. Eu tenho uma imagem do Docker com xeyes instalado. Eu construí-lo com o Dockerfile seguinte e marcá-lo kojiromike/xapps
:
FROM debian:jessie
RUN apt-get -qqy update \
&& apt-get -qqy install xauth x11-apps --no-install-recommends
Eu tentei as seguintes tentativas para exibir xeyes em execução no contêiner para serem exibidos em minha exibição local:
Eu iniciei o boot2docker com tmp
shared para poder acessar o .X11-unix. Um pouquinho de trabalho extra é necessário por causa do boot2docker issue 678 :
boot2docker --vbox-share=/tmp=tmp up
boot2docker ssh <<< 'sudo mount -t vboxsf tmp /tmp'
Primeiro, tentei desativar os mecanismos de segurança usando a interface XQuartz:
PresumiquenãoprecisavaPermitirconexõesdeclientesdaredeporqueestavatentandousarumsoqueteUNIX.Primeiratentativa:
$dockerrun-it-v/tmp/.X11-unix:/tmp/.X11-unix-eDISPLAY=unix$DISPLAY\kojiromike/xappsxeyesError:Can'topendisplay:unix:0
Emseguida,tenteiusaroxauth:
$dockerrun-it-v/tmp/.X11-unix:/tmp/.X11-unix-eDISPLAY=unix$DISPLAY\-eXAUTH="$(xauth nextract - $DISPLAY)" kojiromike/xapps \
sh -c 'printf "%s" "$XAUTH" | xauth nmerge - && xeyes'
Error: Can't open display: unix:0
Estou ficando sem coisas para tentar. Eu li o Blog de Jessica Frazelle , mas parece que ela está trabalhando diretamente o host do Docker, então talvez não tenha o problema do boot2docker que eu tenho.
Quais outras etapas eu preciso conectar ao meu servidor X local, através do boot2docker, a partir de um contêiner docker?