ETF_Suite_Portal/docker-compose.yml
Pascal 1ff511ebe1 chore: Update project configuration and add setup scripts
- Update Docker and Caddy configuration

- Add VPS setup and secrets management scripts

- Add test suite

- Update documentation

- Clean up cache files
2025-05-27 14:41:58 +02:00

84 lines
2.1 KiB
YAML

services:
etf-launcher:
build:
context: .
dockerfile: Dockerfile
command: streamlit run ETF_Suite_Launcher.py --server.port=8500
volumes:
- .:/app
ports:
- "8500:8500"
networks:
- etf_network
environment:
- STREAMLIT_SERVER_PORT=8500
- STREAMLIT_SERVER_ADDRESS=0.0.0.0
- STREAMLIT_SERVER_HEADLESS=true
- STREAMLIT_BROWSER_GATHER_USAGE_STATS=false
- STREAMLIT_SERVER_ENABLE_CORS=true
- STREAMLIT_SERVER_ENABLE_XSRF_PROTECTION=false
- STREAMLIT_SERVER_BASE_URL_PATH=
env_file:
- .env
restart: unless-stopped
# etf-portfolio:
# build:
# context: .
# dockerfile: Dockerfile
# command: streamlit run pages/ETF_Dividend_Portfolio_Builder_Wrapper.py --server.port=8501
# volumes:
# - .:/app
# networks:
# - etf_network
# environment:
# - STREAMLIT_SERVER_BASE_URL_PATH=/portfolio
# - STREAMLIT_SERVER_HEADLESS=true
# - STREAMLIT_BROWSER_GATHER_USAGE_STATS=false
# - STREAMLIT_SERVER_ADDRESS=0.0.0.0
# - FMP_API_KEY=${FMP_API_KEY}
# - OPENAI_API_KEY=${OPENAI_API_KEY}
# restart: unless-stopped
# etf-analyzer:
# build:
# context: .
# dockerfile: Dockerfile
# container_name: etf-analyzer
# restart: unless-stopped
# volumes:
# - .:/app
# environment:
# - STREAMLIT_SERVER_HEADLESS=true
# - STREAMLIT_SERVER_ENABLECORS=true
# - STREAMLIT_SERVER_BASE_URL_PATH=/analyzer
# - STREAMLIT_SERVER_ADDRESS=0.0.0.0
# command: streamlit run pages/ETF_Analyzer_Wrapper.py --server.port=8502
# networks:
# - etf_network
caddy:
image: caddy:2
container_name: caddy
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
networks:
- etf_network
depends_on:
- etf-launcher
# - etf-portfolio
# - etf-analyzer
networks:
etf_network:
driver: bridge
volumes:
caddy_data:
caddy_config: