-
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcompose.test.yml
More file actions
59 lines (57 loc) · 1.72 KB
/
compose.test.yml
File metadata and controls
59 lines (57 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# ==============================================================================
# Docker Compose for Local Testing
# ==============================================================================
# Usage:
# docker compose -f compose.test.yml up --build
# docker compose -f compose.test.yml down -v
#
# Ports: 18080 (HTTP), 18443 (HTTPS) - to avoid conflicts with production
#
# Auto-setup: GeoIP and SSL certificates are auto-generated on first start
# ==============================================================================
services:
angie:
build:
context: ./angie
dockerfile: Dockerfile
image: angie-with-modsec:test
container_name: angie-test
restart: "no"
ports:
- "18080:80"
- "18443:443/tcp"
- "18443:443/udp"
environment:
- TZ=UTC
- AUTO_UPDATE_GEOIP=false
volumes:
# Main config
- ./angie/angie.conf:/etc/angie/angie.conf:ro
# Includes
- ./angie/includes:/etc/angie/includes:ro
# Virtual hosts
- ./angie/conf.d:/etc/angie/conf.d:ro
- ./angie/stream.d:/etc/angie/stream.d:ro
# GeoIP (rw for auto-download)
- ./geoip:/etc/angie/geoip
# SSL certificates (rw for auto-generation)
- ./certs:/etc/angie/ssl
# Logs
- ./logs:/var/log/angie
# ModSecurity
- ./modsec:/etc/angie/modsecurity:ro
# Web
- ./web:/var/www/html:ro
- ./errors:/var/www/errors:ro
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/health"]
interval: 10s
timeout: 5s
retries: 3
start_period: 30s
logging:
driver: json-file
options:
max-size: "5m"
max-file: "1"
# No external networks or volumes for isolated testing