Docker是一個輕量級的應用容器化技術,通過將應用程序和依賴包放置到容器內,可在任何環境中運行應用程序而無需配置環境變量。
VNC是一種用于遠程桌面訪問的協議,它允許使用者在遠程計算機上操作本地計算機。
在Docker中,可以使用VNC連接到圖形界面,以便在容器內運行GUI(圖形用戶界面)應用程序。
FROM ubuntu:18.04
# 安裝vncserver和xfce桌面環境
RUN apt-get update && apt-get install -y \
xfce4 \
xfce4-goodies \
tightvncserver
# 設置vncserver密碼
RUN mkdir ~/.vnc \
&& echo "password" | vncpasswd -f >~/.vnc/passwd \
&& chmod 600 ~/.vnc/passwd
# 設置vncserver配置
RUN echo '#!/bin/bash\n\
vncserver :1 -geometry 1280x800 -depth 24 -localhost no -nolisten tcp' \
>~/start_vnc.sh \
&& chmod +x ~/start_vnc.sh
# 啟動vncserver
CMD ["sh", "-c", "~/start_vnc.sh && tail -f /dev/null"]
在這個示例中,我們首先從Ubuntu 18.04的官方Docker鏡像構建我們自己的鏡像,然后安裝VNC服務器和XFCE桌面環境。
我們設置了一個'password'作為VNC服務器的密碼,創建了一個啟動腳本start_vnc.sh,以啟動VNC服務器。CMD指令最后啟動這個腳本并保持容器的運行狀態。
構建我們自己的Docker鏡像:
$ docker build . -t my-vnc-server
運行容器:
$ docker run -p 5901:5901 -it my-vnc-server
-p指定了端口映射,將容器內的5901端口映射到主機的5901端口上。
使用VNC客戶端連接時,輸入主機IP地址和端口5901,VNC服務器將要求輸入密碼。輸入設置的密碼即可連接到容器內的GUI環境。
上一篇純css 流程圖
下一篇dockervnc端口