| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- # Multi-arch Dockerfile for GoReleaser (dockers_v2).
- # Base image :44 is used without arch suffix so the registry can supply the right
- # platform (manifest list). TARGETPLATFORM is set by BuildKit for COPY.
- # For custom/local single-arch builds, use Dockerfile.singlearch instead.
- ARG TARGETPLATFORM
- FROM registry.fedoraproject.org/fedora-minimal:44 AS olivetin-tmputils
- RUN microdnf -y install dnf-plugins-core && \
- dnf-3 config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo && \
- microdnf install -y docker-ce-cli docker-compose-plugin && microdnf clean all
- FROM registry.fedoraproject.org/fedora-minimal:44
- LABEL org.opencontainers.image.source https://github.com/OliveTin/OliveTin
- LABEL org.opencontainers.image.title OliveTin
- RUN mkdir -p /config /config/entities/ /var/www/olivetin \
- && \
- microdnf install -y --nodocs --noplugins --setopt=keepcache=0 --setopt=install_weak_deps=0 \
- iputils \
- openssh-clients \
- kubernetes-client \
- shadow-utils \
- apprise \
- jq \
- git \
- && microdnf clean all
- COPY --from=olivetin-tmputils \
- /usr/bin/docker \
- /usr/bin/docker
- COPY --from=olivetin-tmputils \
- /usr/libexec/docker/cli-plugins/docker-compose \
- /usr/libexec/docker/cli-plugins/docker-compose
- RUN useradd --system --create-home olivetin -u 1000
- EXPOSE 1337/tcp
- COPY config.yaml /config
- COPY var/entities/* /config/entities/
- COPY examples/backupScript.sh /opt/backupScript.sh
- RUN chmod 755 /opt/backupScript.sh
- VOLUME /config
- ARG TARGETPLATFORM
- COPY $TARGETPLATFORM/OliveTin /usr/bin/OliveTin
- COPY webui /var/www/olivetin/
- COPY var/helper-actions/* /usr/bin/
- USER olivetin
- ENTRYPOINT [ "/usr/bin/OliveTin" ]
|