60 lines
1.7 KiB
Docker
60 lines
1.7 KiB
Docker
FROM ghcr.io/ptero-eggs/yolks:wine_latest
|
|
|
|
LABEL org.opencontainers.image.title="Wine Desktop" \
|
|
org.opencontainers.image.description="Wine with an XFCE desktop, VNC, and noVNC for Pterodactyl" \
|
|
org.opencontainers.image.source="https://git.lexian.dev/Lexian-droid/OpenClaw-pterodactyl-wine-gui-egg"
|
|
|
|
USER root
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive \
|
|
DISPLAY=:0 \
|
|
DISPLAY_WIDTH=1280 \
|
|
DISPLAY_HEIGHT=720 \
|
|
DISPLAY_DEPTH=24 \
|
|
VNC_PORT=5900 \
|
|
NOVNC_PORT=6080 \
|
|
VNC_PASSWORD= \
|
|
XVFB=0 \
|
|
WINEPREFIX=/home/container/.wine
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
xfce4 \
|
|
xfce4-terminal \
|
|
xvfb \
|
|
x11vnc \
|
|
novnc \
|
|
websockify \
|
|
dbus-x11 \
|
|
xauth \
|
|
x11-utils \
|
|
x11-xserver-utils \
|
|
libgl1 \
|
|
libgl1-mesa-dri \
|
|
libegl1 \
|
|
mesa-utils \
|
|
pulseaudio \
|
|
pulseaudio-utils \
|
|
fonts-dejavu \
|
|
fonts-liberation \
|
|
fonts-noto-core \
|
|
fonts-noto-cjk \
|
|
winbind \
|
|
cabextract \
|
|
unzip \
|
|
curl \
|
|
wget \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
|
RUN chmod 0755 /usr/local/bin/docker-entrypoint.sh \
|
|
&& mkdir -p /home/container \
|
|
&& chown -R container:container /home/container 2>/dev/null || true
|
|
|
|
EXPOSE 5900/tcp 6080/tcp
|
|
|
|
# Keep the official tini process and inherited CMD. The wrapper prepares the
|
|
# desktop and then execs the official /entrypoint.sh command unchanged.
|
|
ENTRYPOINT ["/usr/bin/tini", "-g", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
|
CMD ["/bin/bash", "/entrypoint.sh"]
|