通过VNC的Docker容器共享屏幕

时间:2017-09-29 11:03:13

标签: docker qt-creator dockerfile vnc-server docker-windows

我正在尝试按照以下dockerfile创建一个带有qtCreator的容器,并使用以下命令运行容器

docker run -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix qtcreator

但是这会引发错误,如下所示

PS D:\Docker\qtcreator> docker run -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix qtcreator
QXcbConnection: Could not connect to display 
Aborted

我尝试根据我在此容器上安装VNC所做的一些研究,将文件更改为如下所示。

FROM ubuntu:14.04

# Install vnc, xvfb in order to create a 'fake' display and qtcreator

RUN apt-get update && apt-get install -y qtcreator x11vnc xvfb

run     mkdir ~/.vnc
# Setup a password
run     x11vnc -storepasswd 1234 ~/.vnc/passwd


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/qtcreator

之后,我尝试使用以下命令运行此容器

docker run -p 5900 -it --rm -v /tmp/.X11-unix:/tmp/.X11-unix qtcreator x11vnc -forever -usepw -create

这个命令接缝运行并等待终止我认为,因为PS没有返回。

因为我是Docker的新用户,请告诉我如何将我的Windows 10父机器上的VNC客户端或从远程机器连接到此容器中运行的vnc服务器。即如何找到要连接的IP地址和端口号。

更新1

当我运行命令docker ps --filter "status=running"时,我看到以下日志

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                     NAMES
a2ab1397bb2b        qtcreator           "x11vnc -forever -..."   About an hour ago   Up About an hour    0.0.0.0:32770->5900/tcp   clever_haibt
69754e382042        qtcreator           "x11vnc -forever -..."   2 hours ago         Up 2 hours                                    priceless_hugle

0 个答案:

没有答案