Files
cloudy/production.yml
T

167 lines
3.8 KiB
YAML

x-environment: &default-environment
LOG_LEVEL: "DEBUG"
LOG_PATH: "./logs"
ACME_PATH: "./acme.json"
NETWORK: "${NETWORK:-web}"
FIN_LOCATION: ""
STREAMLIT_FIN_SERVER_PORT: "8501"
BAI_LOCATION: ""
STREAMLIT_BAI_SERVER_PORT: "8502"
volumes:
production_traefik: {}
portainer_data: {}
services:
osrm-backend:
environment:
# OSRM manager setup
- OSRM_ALGORITHM=mld
- OSRM_THREADS=2
- OSRM_PORT=5000
- OSRM_PROFILE=/opt/car.lua
- OSRM_MAP_NAME=${OSRM_MAP_NAME}
- OSRM_GEOFABRIK_PATH=${OSRM_GEOFABRIK_PATH}
# Notify OSRM Manager to restart without stopping container
- OSRM_NOTIFY_FILEPATH=/data/osrm_notify.txt
image: furyhawk/osrm-backend:${OSRM_VERSION:-latest}
container_name: osrm_backend
restart: unless-stopped
expose:
- ${OSRM_PORT:-5000}
networks:
- net
- default
mqttx-web:
image: emqx/mqttx-web:latest
container_name: mqttx_web
restart: unless-stopped
ports:
- "9988:80"
networks:
- net
- default
heynote-app:
image: furyhawk/heynote:${HEYNOTETAG:-latest}
container_name: heynote_app
restart: unless-stopped
environment:
NODE_ENV: production
expose:
- 5173
networks:
- net
- default
cheatsheets-app:
image: furyhawk/cheatsheets:${CHEATSHEETSTAG:-latest}
restart: unless-stopped
ports:
- 8811:80
networks:
- net
- default
streamlit-bai:
environment:
<<: *default-environment
image: furyhawk/beyondallinfo:latest
container_name: streamlit_bai_app
restart: unless-stopped
expose:
- ${STREAMLIT_BAI_SERVER_PORT}
command: streamlit run --server.port=$STREAMLIT_BAI_SERVER_PORT --server.address=0.0.0.0 --server.baseUrlPath=$BAI_LOCATION src/app.py
networks:
- net
- default
volumes:
- type: bind
source: ${PWD}/cache/bar_cache.sqlite
target: /app/bar_cache.sqlite
- type: bind
source: ${PWD}/cache/short_cache.sqlite
target: /app/short_cache.sqlite
streamlit-fin:
environment:
<<: *default-environment
build:
context: .
dockerfile: ./compose/streamlit-fin/Dockerfile
image: streamlit_fin_production
container_name: streamlit_fin_app
restart: unless-stopped
expose:
- ${STREAMLIT_FIN_SERVER_PORT}
networks:
- net
- default
command: streamlit run --server.port=$STREAMLIT_FIN_SERVER_PORT --server.address=0.0.0.0 --server.baseUrlPath=$FIN_LOCATION src/app.py
site_server:
image: nginx:alpine
container_name: site_server
restart: unless-stopped
volumes:
- ./site:/usr/share/nginx/html:ro
networks:
- net
- default
expose:
- 80
# msmtpd:
# image: crazymax/msmtpd:latest
# container_name: flarum_msmtpd
# env_file:
# - "./msmtpd.env"
# environment:
# - "TZ"
# restart: always
# expose:
# - 2500
# networks:
# - net
# - default
portainer:
image: portainer/portainer-ce:latest
command: -H unix:///var/run/docker.sock
container_name: portainer
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
networks:
- net
- default
ports:
- "8000:8000"
- "9000:9000"
traefik:
environment:
<<: *default-environment
build:
context: .
dockerfile: ./compose/traefik/Dockerfile
image: traefik_production
container_name: traefik
restart: always
volumes:
- "${LOG_PATH:-./logs}:/logs"
- production_traefik:/etc/traefik/acme:z
- "/var/run/docker.sock:/var/run/docker.sock:ro"
networks:
- net
- default
ports:
- "80:80"
- "443:443"
networks:
net:
external: true
name: ${NETWORK:-web}