File size: 1,479 Bytes
55896b1 | 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 60 61 62 63 64 65 66 67 68 69 70 71 72 | # ============================================
# Premium Valentine Website - Docker Compose
# Production-Grade Container Orchestration
# ============================================
version: '3.8'
services:
valentine-app:
build:
context: .
dockerfile: Dockerfile
container_name: valentine-experience
image: valentine-app:3.0.0
# Port mapping
ports:
- "8080:8080"
# Environment variables
environment:
- TZ=UTC
- NGINX_WORKER_PROCESSES=auto
# Resource limits
deploy:
resources:
limits:
cpus: '0.5'
memory: 256M
reservations:
cpus: '0.25'
memory: 128M
# Restart policy
restart: unless-stopped
# Health check
healthcheck:
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:8080/health"]
interval: 30s
timeout: 3s
retries: 3
start_period: 5s
# Logging
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
# Security options
security_opt:
- no-new-privileges:true
# Read-only root filesystem (except for nginx cache/logs)
read_only: true
tmpfs:
- /var/cache/nginx:size=10M
- /var/run:size=1M
- /tmp:size=10M
# Networks
networks:
- valentine-network
networks:
valentine-network:
driver: bridge
name: valentine-network
|