Files
OpenClaw-pterodactyl-wine-g…/Dockerfile
T

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"]