caddy-sip-guardian/Dockerfile

28 lines
850 B
Text
Raw Normal View History

# Build custom Caddy with SIP Guardian and Layer 4 support
# Use latest builder with Go 1.25+ for caddy-l4 compatibility
FROM caddy:builder AS builder
# Copy local module source
COPY . /src/caddy-sip-guardian
# Build Caddy with local module (using replace directive)
# Using latest caddy-l4 which requires Go 1.25+
WORKDIR /src
RUN xcaddy build \
--with github.com/mholt/caddy-l4 \
--with git.supported.systems/rsp2k/caddy-sip-guardian=/src/caddy-sip-guardian
FROM caddy:alpine
COPY --from=builder /src/caddy /usr/bin/caddy
# Health check
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
CMD wget -qO- http://localhost:2019/config/ || exit 1
EXPOSE 80 443 443/udp 5060 5060/udp 5061
ENTRYPOINT ["caddy"]
# Default: run with Caddyfile
CMD ["run", "--config", "/etc/caddy/Caddyfile", "--adapter", "caddyfile"]