patronus (sha256:326d00bd0709135022c3b89538c57de127e2bd21420f487cc032bf31e67a1c86)

Published 2026-11-06 02:32:37 -08:00 by CanuteTheGreat in CanuteTheGreat/patronus

Installation

docker pull git.canutethegreat.com/canutethegreat/patronus@sha256:326d00bd0709135022c3b89538c57de127e2bd21420f487cc032bf31e67a1c86
sha256:326d00bd0709135022c3b89538c57de127e2bd21420f487cc032bf31e67a1c86

Image layers

WORKDIR /
COPY /gentoo/ / # buildkit
CMD ["/bin/bash"]
ARG PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo 'FEATURES="${FEATURES} -sandbox -usersandbox -ipc-sandbox -network-sandbox -pid-sandbox"' >> /etc/portage/make.conf # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge-webrsync # buildkit
COPY gentoo /var/db/repos/patronus-overlay # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c mkdir -p /etc/portage/repos.conf && printf '[patronus]\nlocation = /var/db/repos/patronus-overlay\npriority = 50\n' > /etc/portage/repos.conf/patronus-overlay.conf # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo "net-firewall/patronus ${PATRONUS_USE} -openrc" > /etc/portage/package.use/patronus-docker-build # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo "net-firewall/patronus ~amd64" > /etc/portage/package.accept_keywords/patronus && echo "=net-firewall/patronus-9999 **" >> /etc/portage/package.accept_keywords/patronus # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge --verbose --autounmask-write --onlydeps net-firewall/patronus && etc-update --automode -5 || true # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge --verbose --onlydeps net-firewall/patronus # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo "dev-lang/rust-bin ~amd64" >> /etc/portage/package.accept_keywords/patronus && emerge --verbose dev-lang/rust-bin dev-util/cargo-c # buildkit
ARG PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo 'FEATURES="${FEATURES} -sandbox -usersandbox -ipc-sandbox -network-sandbox -pid-sandbox"' >> /etc/portage/make.conf # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge-webrsync # buildkit
COPY gentoo /var/db/repos/patronus-overlay # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c chmod -R a+rX /var/db/repos/patronus-overlay # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c mkdir -p /etc/portage/repos.conf && printf '[patronus]\nlocation = /var/db/repos/patronus-overlay\npriority = 50\n' > /etc/portage/repos.conf/patronus-overlay.conf # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo "net-firewall/patronus ${PATRONUS_USE} -openrc" > /etc/portage/package.use/patronus-docker-build # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c echo "net-firewall/patronus ~amd64" > /etc/portage/package.accept_keywords/patronus && echo "=net-firewall/patronus-9999 **" >> /etc/portage/package.accept_keywords/patronus # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge --verbose --autounmask-write --onlydeps net-firewall/patronus && etc-update --automode -5 || true # buildkit
COPY . /usr/src/patronus # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c cd /usr/src/patronus && cargo vendor /var/cache/distfiles/patronus-vendor 2>&1 | tail -5 || true # buildkit
ENV EGIT_OVERRIDE_REPO_PATRONUS=/usr/src/patronus
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge --verbose net-firewall/patronus # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c useradd -r -u 1000 -m -s /bin/bash patronus 2>/dev/null || true && chown -R patronus:patronus /etc/patronus /var/lib/patronus /var/log/patronus 2>/dev/null || true && mkdir -p /etc/patronus/tls && chown patronus:patronus /etc/patronus/tls && mkdir -p /data /app/static && chown patronus:patronus /data /app /app/static # buildkit
RUN |1 PATRONUS_USE=web cli api dashboard nftables dhcp dns unbound vpn wireguard openvpn ipsec multiwan monitoring prometheus captive-portal vlan qos backup systemd /bin/sh -c emerge --verbose sys-libs/libcap && setcap cap_net_admin,cap_net_raw+eip "$(command -v nft)" && setcap cap_net_admin+eip "$(command -v wg)" && setcap cap_net_admin+eip "$(readlink -f "$(command -v ip)")" && getcap "$(readlink -f "$(command -v ip)")" | grep -q cap_net_admin && if ct=$(command -v conntrack); then setcap cap_net_admin+eip "$ct" && getcap "$ct"; fi && getcap "$(command -v nft)" "$(command -v wg)" # buildkit
USER patronus
WORKDIR /home/patronus
EXPOSE [51820/udp 8443/tcp]
HEALTHCHECK {Test:[CMD-SHELL curl -kf https://localhost:8443/ || exit 1] Interval:30s Timeout:3s StartPeriod:5s StartInterval:0s Retries:3}
CMD ["patronus-web"]
COPY --chown=patronus:patronus static /app/static # buildkit
LABEL org.opencontainers.image.revision=1b7e3b06dd56a1a26f5cdd0c9e8372727505cccf

Labels

Key Value
org.opencontainers.image.revision 1b7e3b06dd56a1a26f5cdd0c9e8372727505cccf
Details
Container
2026-11-06 02:32:37 -08:00
0
OCI / Docker
linux/amd64
3.6 GiB
Versions (125) View all