version: '3.8'

services:
  tradingbot:
    container_name: tradingbot
    image: gitea.encke-hake.ts.net/alby96/encelado/tradingbot:latest
    ports:
      - "${EXTERNAL_PORT:-8080}:8080"
    volumes:
      - tradingbot-data:/app/data
    environment:
      - ASPNETCORE_ENVIRONMENT=Production
      - ASPNETCORE_URLS=http://+:8080
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/health"]
      interval: 30s
      timeout: 3s
      retries: 3
      start_period: 10s
    networks:
      - tradingbot-network
    deploy:
      resources:
        limits:
          cpus: '2.0'
          memory: 1G
        reservations:
          cpus: '0.5'
          memory: 256M

volumes:
  tradingbot-data:
    driver: local

networks:
  tradingbot-network:
    driver: bridge
