commit b2fe2c3937e0a44e482f350ead64a2fd469502d8 Author: nchebrov Date: Tue Dec 16 14:32:11 2025 +0000 Добавить Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..dcb6a8d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,50 @@ +# ---- Stage 1: Fetch Mattermost + MostlyMatter ---- + FROM debian:bookworm-slim AS fetcher + + ARG MOSTLYMATTER_VERSION=v10.11.3 + ARG MATTERMOST_VERSION=10.11.3 + + ARG MM_DOWNLOAD_URL=https://releases.mattermost.com/${MATTERMOST_VERSION}/mattermost-${MATTERMOST_VERSION}-linux-amd64.tar.gz + ARG MOSTLY_DOWNLOAD_URL=https://packages.framasoft.org/projects/mostlymatter/mostlymatter-amd64-${MOSTLYMATTER_VERSION} + + RUN apt-get update && apt-get install -y --no-install-recommends \ + curl ca-certificates tar \ + && rm -rf /var/lib/apt/lists/* + + WORKDIR /tmp + + # Download and extract official Mattermost release + RUN curl -L $MM_DOWNLOAD_URL | tar -xz + + # Download MostlyMatter binary and overwrite Mattermost's binary + RUN curl -L -o mostlymatter $MOSTLY_DOWNLOAD_URL && \ + chmod +x mostlymatter && \ + mv mostlymatter mattermost/bin/ + + + # ---- Stage 2: Runtime container ---- + FROM debian:bookworm-slim + + # Add runtime deps for Mattermost + RUN apt-get update && apt-get install -y --no-install-recommends \ + ca-certificates tzdata \ + && rm -rf /var/lib/apt/lists/* + + # Create mattermost user + RUN useradd --system --create-home --uid 2000 mattermost + + WORKDIR /mattermost + + # Copy prepared Mattermost tree with MostlyMatter binary inside + COPY --from=fetcher /tmp/mattermost /mattermost + + # Adjust permissions + RUN chown -R mattermost:mattermost /mattermost + + USER mattermost + + EXPOSE 8065 + + ENTRYPOINT ["/mattermost/bin/mostlymatter"] + CMD ["server"] + \ No newline at end of file