patronus (sha256:5f799581c01e837562f353dd4739143f94dc41b350b8e386402d3823892f320c)
Installation
docker pull git.canutethegreat.com/canutethegreat/patronus@sha256:5f799581c01e837562f353dd4739143f94dc41b350b8e386402d3823892f320csha256:5f799581c01e837562f353dd4739143f94dc41b350b8e386402d3823892f320cImage 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)" && 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=47e45c788cd95ac21b566e99201334a0c8ce4ba5 |
Labels
| Key | Value |
|---|---|
| org.opencontainers.image.revision | 47e45c788cd95ac21b566e99201334a0c8ce4ba5 |
Details
Versions (125)
View all
latest
2026-11-09
d102b1e9d373b199af7e06b289d5408af1bbf492
2026-11-09
c50e0ce2e83151bfcc0f5b07c2ecc66bf0e85854
2026-11-08
006a8925dae2874829ace62c3f5eb9be6aca6568
2026-11-08
6abd735ee0cfccf0124f648dd1be03e8156224ca
2026-11-08