LXC и Google Chrome не может открыть дисплей

Я пытаюсь запустить Google Chrome из контейнера lxc, но он не работает, несмотря на мои неоднократные попытки и различные изменения.

ERROR:browser_main_loop.cc(271)] Gtk: cannot open display: :0.0

Вот мой сценарий

#!/bin/sh
CONTAINER=xenial-gui
CMD_LINE="google-chrome --disable-setuid-sandbox --user-data-dir $*"

STARTED=false

if ! lxc-wait -n $CONTAINER -s RUNNING -t 0; then
    lxc-start -n $CONTAINER -d
    lxc-wait -n $CONTAINER -s RUNNING
    STARTED=true
fi

PULSE_SOCKET=/home/ubuntu/.pulse_socket

lxc-attach --clear-env -n $CONTAINER -- sudo -u ubuntu -i \
    env DISPLAY=$DISPLAY PULSE_SERVER=$PULSE_SOCKET $CMD_LINE

if [ "$STARTED" = "true" ]; then
    lxc-stop -n $CONTAINER -t 10
fi
2
задан 3 June 2016 в 18:01

1 ответ

Для меня это работает при выполнении xhost local:* как корень или с sudo. Эта команда предоставляет доступ к экрану для локальных пользователей. Я должен выпустить это, потому что я выполняю непривилегированные контейнеры как другой пользователь, поскольку я вхожу в свой рабочий стол.

при выполнении не привилегированного контейнера Вы могли бы еще больше ограничить это с xhost local:username. См. также man xhost.

, Когда я начал экспериментировать, мне случайно включили это и задался вопросом некоторое время после перезапуска моей машины.

0
ответ дан 3 June 2016 в 18:01

Другие вопросы по тегам:

Похожие вопросы: