2017-11-03 3 views
0

verwendet I-Programme mit Befehlen wie folgt auszuführen:Run-GUI-Programme in Docker in Ubuntu

docker run -ti \ 
    --name wireshark \ 
-e DISPLAY=$DISPLAY \ 
-v /tmp/.X11-unix:/tmp/.X11-unix \ 
-v $HOME/.Xauthority:/root/.Xauthority \ 
--privileged \ 
    -d ubuntu:17.10 /bin/bash 

dann könnte ich laufen wireshark mein Ubuntu-System-Display. Wie das Beispiel dieser Seite: Running GUI App with docker

Jetzt funktioniert es nicht. Als ich wireshark laufen bekomme ich diesen Fehler:

[email protected]:/# wireshark 
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' 
No protocol specified 
QXcbConnection: Could not connect to display :0 
Aborted (core dumped) 

Antwort

1

Es ist möglich, dieses Problem zu lösen mit

xhost +

aber es wäre dann sinnvoll sein,

xhost -

nach zu tun Sie verwenden diesen Container nicht mehr.

In der Tat die restriktivere

xhost +local:docker

ist genug

+0

Nizza. Weißt du, warum der Weg, den ich vorher gemacht habe, nicht mehr funktioniert? –

+0

Ich habe vergessen, param (-v $ HOME/.Xauthority: /root/.Xauthority) zu erwähnen, so wie ich es vorher getan habe –