soulseek-cloudron/Dockerfile.cloudron

73 lines
2.1 KiB
Docker

FROM ubuntu:20.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y curl ca-certificates xz-utils binutils patch && rm -rf /var/lib/apt/lists/*
WORKDIR /tmp
# Récupérer l'AppImage avec l'URL fournie
RUN curl -fL# 'https://drive.usercontent.google.com/download?id=1I7v1fh7jXa_YOh_AJ52XqRB3QJlqc1Hi&export=download&authuser=0' -o SoulseekQt-2024-2-4.AppImage && \
chmod +x SoulseekQt-2024-2-4.AppImage && \
./SoulseekQt-2024-2-4.AppImage --appimage-extract && \
mv squashfs-root /soulseek
FROM ubuntu:20.04
ENV LANG=C.UTF-8
ENV QT_XCB_NO_ACCESS_CONTROL=1
ENV QT_X11_NO_MITSHM=1
ENV DISPLAY=:1
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
xvfb \
x11vnc \
websockify \
ca-certificates \
curl \
libegl1-mesa \
libfontconfig1 \
libxcb-cursor0 \
libx11-xcb1 \
libxcomposite1 \
libxcursor1 \
libxi6 \
libxinerama1 \
libxrandr2 \
libxkbcommon-x11-0 \
libxrender1 \
libxcb-icccm4 \
libxcb-image0 \
libxcb-keysyms1 \
libxcb-render-util0 \
libxcb-shape0 \
libxcb-shm0 \
libxcb-xfixes0 \
libxcb-xinerama0 \
libxcb-xkb1 \
libxshmfence1 \
libgl1 \
libdbus-1-3 \
libxtst6 \
libxss1 \
libxv1 \
libxvmc1 \
libxxf86dga1 \
libxxf86vm1 \
gosu \
xauth \
x11-xserver-utils \
&& rm -rf /var/lib/apt/lists/*
# Créer les répertoires nécessaires
RUN mkdir -p /app/code /app/data /usr/share/novnc
# Télécharger noVNC
RUN curl -fL# "https://github.com/novnc/noVNC/archive/master.tar.gz" -o /tmp/novnc.tar.gz && \
tar -xf /tmp/novnc.tar.gz --strip-components=1 -C /usr/share/novnc && \
rm /tmp/novnc.tar.gz
# Copier l'app Soulseek depuis le builder
COPY --from=builder /soulseek /app/code
# Copier nos fichiers Cloudron spécifiques
COPY start.sh /app/code/start.sh
COPY soulseek.conf /app/code/soulseek.conf
# Créer l'utilisateur non-root Cloudron et régler les droits sur les dossiers persistants
RUN useradd -u 1000 -m -d /app/data -s /bin/false cloudron && \
chown -R cloudron:cloudron /app/code /app/data
EXPOSE 6080
CMD ["/app/code/start.sh"]