Note: Coraza is primarily a Go library. Docker images are available through community projects and the OWASP Core Rule Set project.
The OWASP Coraza project provides Docker images with Caddy:
# Coraza with OWASP Core Rule Set (CRS)
docker pull coreruleset/coraza-crs:latest
# Alternative community images
docker pull ghcr.io/corazawaf/coraza:latest
# Pull the Coraza CRS image
docker pull coreruleset/coraza-crs:latest
# Run Coraza WAF
docker run -d \
--name coraza-waf \
-p 8080:8080 \
-p 8443:8443 \
coreruleset/coraza-crs:latest
version: '3.8'
services:
coraza-waf:
image: coreruleset/coraza-crs:latest
container_name: coraza-waf
ports:
- "8080:8080"
- "8443:8443"
volumes:
- ./coraza-config:/etc/caddy
- ./logs:/var/log/coraza
restart: unless-stopped
webapp:
image: nginx:alpine
container_name: webapp
expose:
- "80"
Create a Dockerfile for custom Coraza deployments:
FROM caddy:2-alpine
RUN caddy add-plugin github.com/corazawaf/coraza-caddy
COPY Caddyfile /etc/caddy/Caddyfile
EXPOSE 8080 8443