ProxyTcpReverse/docker-compose.yml

59 lines
1.5 KiB
YAML

version: '3.8'
services:
tcp-proxy:
build: .
container_name: industrial-nat-proxy
restart: always # ⚠️ Reiniciar automáticamente
# Mapear puertos del host al contenedor
ports:
- "8080:8080" # Puerto de gestión (API REST)
# Los puertos NAT se crean dinámicamente
# Montar volúmenes para persistencia y configuración
volumes:
- ./config:/app/config:rw # Configuración
- ./certs:/app/certs:ro # Certificados SSH (solo lectura)
- ./logs:/app/logs:rw # Logs
- ./scripts:/app/scripts:rw # Scripts personalizados
# Variables de entorno
environment:
- PYTHONUNBUFFERED=1
- CONFIG_FILE=/app/config/nat_config.yaml
- TZ=America/Argentina/Buenos_Aires # Ajustar tu zona horaria
# Configuración de red
networks:
- proxy-network
# Configuración de recursos
deploy:
resources:
limits:
memory: 1G
cpus: '1.0'
reservations:
memory: 512M
cpus: '0.5'
# Configuración de salud
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/status"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
# Reiniciar en caso de fallo
deploy:
restart_policy:
condition: any
delay: 10s
max_attempts: 5
window: 120s
networks:
proxy-network:
driver: bridge