diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index 2284dbe..929e62a 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -35,8 +35,8 @@ jobs: - name: Build and push uses: docker/build-push-action@v6 with: - context: ./StableV2 - file: StableV2/Dockerfile + context: ./Stable + file: Stable/Dockerfile platforms: linux/amd64 pull: false push: true diff --git a/Experimental/Dockerfile b/Experimental/Dockerfile index 7963886..47af4fc 100644 --- a/Experimental/Dockerfile +++ b/Experimental/Dockerfile @@ -3,7 +3,7 @@ LABEL maintainer="gnilebein - " # Setup Labels ARG VERSION -ARG IMAGE_CREATEDATE +ARG IMAGE_CREATED # Set apt non-interactive ENV DEBIAN_FRONTEND=noninteractive diff --git a/README.md b/README.md index 02e33e6..fcfc373 100644 --- a/README.md +++ b/README.md @@ -34,4 +34,4 @@ This allows configuration of the _Webinterface_, _DKIM_ and _Redis_. The tool wr ### Support ### This Docker image is for personal use but let me know if there are any improvements available. -Please use [Github](https://github.com/gnilebein/Docker-Rspamd) to send me a message +Please use [Github](https://gitea.gnilebein.de/gnilebein/Docker-rspamd) to send me a message diff --git a/Stable/Dockerfile b/Stable/Dockerfile index 546b8b1..a69c628 100644 --- a/Stable/Dockerfile +++ b/Stable/Dockerfile @@ -1,13 +1,38 @@ FROM debian:stable-slim -LABEL maintainer="gnilebein - " +LABEL maintainer="gnilebein - " + +# Setup Labels +ARG VERSION +ARG IMAGE_CREATED # Set apt non-interactive -ENV DEBIAN_FRONTEND noninteractive +ENV DEBIAN_FRONTEND=noninteractive + +LABEL org.label-schema.name="Rspamd" \ + org.label-schema.description="Rspamd Spam Filter - STABLE" \ + org.label-schema.usage="https://gitea.gnilebein.de/gnilebein/-/packages/container/docker-rspamd/latest" \ + org.label-schema.url="https://rspamd.com" \ + org.label-schema.vendor="gnilebein" \ + org.label-schema.schema-version="1.0" \ + org.label-schema.version=$VERSION \ + org.label-schema.vcs-url="https://gitea.gnilebein.de/gnilebein/Docker-rspamd" \ + org.label-schema.build-date=$DATE # Install Rspamd RUN set -x \ && apt update \ - && apt --no-install-recommends install -y lsb-release wget gnupg openssl ca-certificates \ + && apt --no-install-recommends install -y \ + apt-transport-https \ + dnsutils \ + netcat-traditional \ + lsb-release \ + wget \ + gnupg \ + openssl \ + ca-certificates \ + nano \ + less \ + ca-certificates \ && DEBIAN_CODE_NAME=`lsb_release -c -s` \ && wget -O - https://rspamd.com/apt-stable/gpg.key | apt-key add - \ && echo "deb http://rspamd.com/apt-stable/ $DEBIAN_CODE_NAME main" > /etc/apt/sources.list.d/rspamd.list \ @@ -16,42 +41,31 @@ RUN set -x \ && apt --no-install-recommends install -y rspamd \ && apt autoremove --purge -y \ && apt clean \ - && rm -rf /var/lib/apt/lists/* + && rm -rf /var/lib/apt/lists/* \ + && echo 'alias ll="ls -la --color"' >> ~/.bashrc # Override default settings COPY rspamd.conf.local.override /etc/rspamd/ COPY worker-controller.inc /etc/rspamd/override.d/ COPY worker-proxy.inc /etc/rspamd/override.d/ +COPY set_worker_password.sh /set_worker_password.sh +COPY docker-entrypoint.sh /docker-entrypoint.sh -# Keep database and configuration persistent +# # Keep database and configuration persistent VOLUME /etc/rspamd/local.d +VOLUME /etc/rspamd/override.d +VOLUME /etc/rspamd/custom VOLUME /var/lib/rspamd -# Port 11334 is for web frontend -# Port 11332 is for milter -# Port 11333 is for worker -EXPOSE 11332 11334 +EXPOSE 11332 11333 11334 # Healtcheck if Rspamd is returning stats HEALTHCHECK --interval=1m --timeout=5s --start-period=10s \ CMD /usr/bin/rspamadm control stat || exit 1 # Run Rspamd -ENTRYPOINT ["/usr/bin/rspamd","-f","-u","_rspamd","-g","_rspamd"] +ENTRYPOINT ["bash", "/docker-entrypoint.sh"] -# Setup Labels -ARG VERSION -ARG COMMIT -ARG BRANCH -ARG DATE +STOPSIGNAL SIGTERM -LABEL org.label-schema.name="Rspamd" \ - org.label-schema.description="Rspamd Spam Filter - STABLE" \ - org.label-schema.usage="https://hub.docker.com/r/gnilebein/rspamd/" \ - org.label-schema.url="https://rspamd.com" \ - org.label-schema.vendor="gnilebein" \ - org.label-schema.schema-version="1.0" \ - org.label-schema.version=$VERSION \ - org.label-schema.vcs-url="https://github.com/rspamd/rspamd/" \ - org.label-schema.vcs-ref=$COMMIT \ - org.label-schema.build-date=$DATE \ +CMD ["/usr/bin/rspamd", "-f", "-u", "_rspamd", "-g", "_rspamd"] \ No newline at end of file diff --git a/StableV2/docker-entrypoint.sh b/Stable/docker-entrypoint.sh similarity index 100% rename from StableV2/docker-entrypoint.sh rename to Stable/docker-entrypoint.sh diff --git a/Stable/hooks/build b/Stable/hooks/build index bff954c..fdce536 100644 --- a/Stable/hooks/build +++ b/Stable/hooks/build @@ -9,9 +9,8 @@ VERSION=$(git ls-remote --tags -q https://github.com/rspamd/rspamd | sed -n "s/^ IMAGE_NAME=docker-rspamd -zip -r config - docker build \ + --no-cache \ --build-arg VERSION=${VERSION} \ --build-arg COMMIT=$(git ls-remote --tags -q https://github.com/rspamd/rspamd | sed -n "s/^\([[:xdigit:]]\{40\}\)[[:blank:]]refs\/tags\/${VERSION}^{}$/\1/p" | xargs git rev-parse --short) \ --build-arg BRANCH=$(git rev-parse --abbrev-ref HEAD) \ diff --git a/StableV2/set_worker_password.sh b/Stable/set_worker_password.sh similarity index 100% rename from StableV2/set_worker_password.sh rename to Stable/set_worker_password.sh diff --git a/StableV2/Dockerfile b/StableV2/Dockerfile deleted file mode 100644 index db709b3..0000000 --- a/StableV2/Dockerfile +++ /dev/null @@ -1,72 +0,0 @@ -FROM debian:stable-slim -LABEL maintainer="gnilebein - " - -# Setup Labels -ARG VERSION -ARG IMAGE_CREATED - -# Set apt non-interactive -ENV DEBIAN_FRONTEND=noninteractive - -LABEL org.label-schema.name="Rspamd" \ - org.label-schema.description="Rspamd Spam Filter - STABLE" \ - org.label-schema.usage="https://gitea.gnilebein.de/gnilebein/-/packages/container/docker-rspamd/latest" \ - org.label-schema.url="https://rspamd.com" \ - org.label-schema.vendor="gnilebein" \ - org.label-schema.schema-version="1.0" \ - org.label-schema.version=$VERSION \ - org.label-schema.vcs-url="https://gitea.gnilebein.de/gnilebein/Docker-rspamd" \ - org.label-schema.vcs-ref=$COMMIT \ - org.label-schema.build-date=$DATE - -# Install Rspamd -RUN set -x \ - && apt update \ - && apt --no-install-recommends install -y \ - apt-transport-https \ - dnsutils \ - netcat-traditional \ - lsb-release \ - wget \ - gnupg \ - openssl \ - ca-certificates \ - nano \ - less \ - ca-certificates \ - && DEBIAN_CODE_NAME=`lsb_release -c -s` \ - && wget -O - https://rspamd.com/apt-stable/gpg.key | apt-key add - \ - && echo "deb http://rspamd.com/apt-stable/ $DEBIAN_CODE_NAME main" > /etc/apt/sources.list.d/rspamd.list \ - && apt purge -y lsb-release wget gnupg \ - && apt update \ - && apt --no-install-recommends install -y rspamd \ - && apt autoremove --purge -y \ - && apt clean \ - && rm -rf /var/lib/apt/lists/* \ - && echo 'alias ll="ls -la --color"' >> ~/.bashrc - -# Override default settings -COPY rspamd.conf.local.override /etc/rspamd/ -COPY worker-controller.inc /etc/rspamd/override.d/ -COPY worker-proxy.inc /etc/rspamd/override.d/ -COPY set_worker_password.sh /set_worker_password.sh -COPY docker-entrypoint.sh /docker-entrypoint.sh - -# # Keep database and configuration persistent -VOLUME /etc/rspamd/local.d -VOLUME /etc/rspamd/override.d -VOLUME /etc/rspamd/custom -VOLUME /var/lib/rspamd - -EXPOSE 11332 11333 11334 - -# Healtcheck if Rspamd is returning stats -HEALTHCHECK --interval=1m --timeout=5s --start-period=10s \ - CMD /usr/bin/rspamadm control stat || exit 1 - -# Run Rspamd -ENTRYPOINT ["bash", "/docker-entrypoint.sh"] - -STOPSIGNAL SIGTERM - -CMD ["/usr/bin/rspamd", "-f", "-u", "_rspamd", "-g", "_rspamd"] \ No newline at end of file diff --git a/StableV2/hooks/build b/StableV2/hooks/build deleted file mode 100644 index fdce536..0000000 --- a/StableV2/hooks/build +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -# hooks/build -# https://docs.docker.com/docker-cloud/builds/advanced/ - -# $IMAGE_NAME var is injected into the build so the tag is correct. -echo "[***] Build hook running" - -VERSION=$(git ls-remote --tags -q https://github.com/rspamd/rspamd | sed -n "s/^[[:xdigit:]]\{40\}[[:blank:]]refs\/tags\/\([0-9]\{1\}\.[0-9]\{1,2\}\($\|\.[0-9]\{1,2\}$\)\)/\1/p" | sort --version-sort | tail -1) - -IMAGE_NAME=docker-rspamd - -docker build \ - --no-cache \ - --build-arg VERSION=${VERSION} \ - --build-arg COMMIT=$(git ls-remote --tags -q https://github.com/rspamd/rspamd | sed -n "s/^\([[:xdigit:]]\{40\}\)[[:blank:]]refs\/tags\/${VERSION}^{}$/\1/p" | xargs git rev-parse --short) \ - --build-arg BRANCH=$(git rev-parse --abbrev-ref HEAD) \ - --build-arg DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \ - -t ${IMAGE_NAME} . \ No newline at end of file diff --git a/StableV2/hooks/post_push b/StableV2/hooks/post_push deleted file mode 100644 index 3a3788f..0000000 --- a/StableV2/hooks/post_push +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -VERSION=$(git ls-remote --tags -q https://github.com/rspamd/rspamd | sed -n "s/^[[:xdigit:]]\{40\}[[:blank:]]refs\/tags\/\([0-9]\{1\}\.[0-9]\{1,2\}\($\|\.[0-9]\{1,2\}$\)\)/\1/p" | sort --version-sort | tail -1) - -docker tag \ - "${IMAGE_NAME}" \ - "${DOCKER_REPO}:stable-${VERSION}" -docker push \ - "${DOCKER_REPO}:stable-${VERSION}" diff --git a/StableV2/rspamd.conf.local.override b/StableV2/rspamd.conf.local.override deleted file mode 100644 index 226a170..0000000 --- a/StableV2/rspamd.conf.local.override +++ /dev/null @@ -1,13 +0,0 @@ -options { - pidfile = false; - .include "$CONFDIR/options.inc" - .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/options.inc" - .include(try=true; priority=10) "$LOCAL_CONFDIR/override.d/options.inc" -} - -logging { - type = "console"; - .include "$CONFDIR/logging.inc" - .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/logging.inc" - .include(try=true; priority=10) "$LOCAL_CONFDIR/override.d/logging.inc" -} \ No newline at end of file diff --git a/StableV2/worker-controller.inc b/StableV2/worker-controller.inc deleted file mode 100644 index 2b6378a..0000000 --- a/StableV2/worker-controller.inc +++ /dev/null @@ -1 +0,0 @@ -bind_socket = "*:11334"; diff --git a/StableV2/worker-proxy.inc b/StableV2/worker-proxy.inc deleted file mode 100644 index 0fe2cf0..0000000 --- a/StableV2/worker-proxy.inc +++ /dev/null @@ -1 +0,0 @@ -bind_socket = *:11332;