2016-07-07 16 views
0

Ich versuche, Programme mit einer grafischen Benutzeroberfläche in einem Andock-Container über SSH zu verwenden.In einem Docker-Container: "Fehler: kann nicht geöffnet werden Anzeige: localhost: 11.0"

Momentan bin ich über ssh auf einem externen Rechner verbunden, wo Docker und die Container laufen. Auf dem Host kann ich Programme wie Firefox starten, das korrekt angezeigt wurde. Die Verbindung wird hergestellt mit:

ssh -Y [email protected] 

Wenn ich das gleiche in einem Docker Behälter versuchen, mit dem firefox Bild (siehe unten):

docker run -it --privileged --rm \ 
    -e DISPLAY=$DISPLAY \ 
    -v /tmp/.X11-unix:/tmp/.X11-unix \ 
    -v /root/.Xauthority:/root/.Xauthority:rw \ 
    firefox 

bekomme ich nur:

Error: cannot open display: localhost:11.0 

Ich habe bereits versucht, xhost + auf dem Host zu setzen, aber es funktioniert immer noch nicht. Der Host läuft Scientific Linux release 7.2 und das Docker Bild wird mit dem Dockerfile vonhttp://fabiorehm.com/blog/2014/09/11/running-gui-apps-with-docker/ erstellt:

FROM ubuntu:14.04 

RUN apt-get update && apt-get install -y firefox 

# Replace 1000 with your user/group id 
RUN export uid=1000 gid=1000 && \ 
    mkdir -p /home/developer && \ 
    echo "developer:x:${uid}:${gid}:Developer,,,:/home/developer:/bin/bash" >> /etc/passwd && \ 
    echo "developer:x:${uid}:" >> /etc/group && \ 
    echo "developer ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/developer && \ 
    chmod 0440 /etc/sudoers.d/developer && \ 
    chown ${uid}:${gid} -R /home/developer 

USER developer 
ENV HOME /home/developer 
CMD /usr/bin/firefox 

Antwort

2

--net=host-docker run löste das Problem Hinzufügen.