Moved to core stack
This commit is contained in:
@@ -1,75 +0,0 @@
|
|||||||
services:
|
|
||||||
traefik:
|
|
||||||
image: traefik:v3.6.1
|
|
||||||
ports:
|
|
||||||
- 80:80
|
|
||||||
- 443:443
|
|
||||||
- 8082:8080
|
|
||||||
environment:
|
|
||||||
- CF_DNS_API_TOKEN_FILE=/run/secrets/cloudflare_api_token
|
|
||||||
volumes:
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
||||||
- ./static.yml:/etc/traefik/traefik.yml:ro
|
|
||||||
- ./dynamic.yml:/etc/traefik/dynamic/dynamic.yml:ro
|
|
||||||
- /home/doc/projects/swarm-data/traefik/certificates:/certificates
|
|
||||||
- /home/doc/projects/swarm-data/traefik/logs:/var/log/traefik
|
|
||||||
secrets:
|
|
||||||
- cloudflare_api_token
|
|
||||||
networks:
|
|
||||||
- frostlabs
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:8080/ping" ]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 3
|
|
||||||
start_period: 30s
|
|
||||||
deploy:
|
|
||||||
mode: replicated
|
|
||||||
replicas: 1
|
|
||||||
placement:
|
|
||||||
constraints:
|
|
||||||
- node.labels.task == control
|
|
||||||
|
|
||||||
crowdsec:
|
|
||||||
image: crowdsecurity/crowdsec:latest
|
|
||||||
environment:
|
|
||||||
# Disable online API enrollment (use for local setup)
|
|
||||||
- DISABLE_ONLINE_API=false
|
|
||||||
# Set collections to install
|
|
||||||
- COLLECTIONS=crowdsecurity/traefik crowdsecurity/http-cve
|
|
||||||
# Enable Prometheus metrics
|
|
||||||
- METRICS_PORT=6060
|
|
||||||
volumes:
|
|
||||||
# Persistent CrowdSec configuration and data
|
|
||||||
- /home/doc/projects/swarm-data/crowdsec/config:/etc/crowdsec
|
|
||||||
- /home/doc/projects/swarm-data/crowdsec/data:/var/lib/crowdsec/data
|
|
||||||
# Traefik access logs (read-only)
|
|
||||||
- /home/doc/projects/swarm-data/traefik/logs:/var/log/traefik:ro
|
|
||||||
# Acquis configuration
|
|
||||||
- ./acquis.yaml:/etc/crowdsec/acquis.yaml:ro
|
|
||||||
networks:
|
|
||||||
- frostlabs
|
|
||||||
deploy:
|
|
||||||
mode: replicated
|
|
||||||
replicas: 1
|
|
||||||
placement:
|
|
||||||
constraints:
|
|
||||||
- node.labels.task == control
|
|
||||||
restart_policy:
|
|
||||||
condition: on-failure
|
|
||||||
delay: 5s
|
|
||||||
max_attempts: 3
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "cscli", "version" ]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 10s
|
|
||||||
retries: 3
|
|
||||||
start_period: 60s
|
|
||||||
|
|
||||||
networks:
|
|
||||||
frostlabs:
|
|
||||||
external: true
|
|
||||||
|
|
||||||
secrets:
|
|
||||||
cloudflare_api_token:
|
|
||||||
external: true
|
|
||||||
Reference in New Issue
Block a user