docker-projects/monitor/compose.yml
2024-08-20 10:29:46 +02:00

66 lines
2.1 KiB
YAML

# https://docs.monitor.dev/
# https://demo.monitor.dev/
# Build and deployment system
name: monitor
services:
monitor-core:
container_name: monitor
image: ghcr.io/mbecker20/monitor:latest ## use ghcr.io/mbecker20/monitor:latest-aarch64 for arm support
restart: unless-stopped
depends_on:
- monitor-mongo
logging:
driver: local # enable log rotation by default. see `https://docs.docker.com/config/containers/logging/local/`
ports:
- 9120:9120
extra_hosts:
# allows for local periphery connection at "http://host.docker.internal:8120"
- host.docker.internal:host-gateway
environment:
# https://github.com/mbecker20/monitor/blob/main/config_example/core.config.example.toml
MONITOR_HOST: http://localhost:9120
MONITOR_TITLE: Monitor # Change the app title, displayed in the browser tab.
## MONGO
MONITOR_MONGO_ADDRESS: monitor-mongo:27017
MONITOR_MONGO_USERNAME: admin # match ones below
MONITOR_MONGO_PASSWORD: admin
## KEYS
MONITOR_PASSKEY: a_random_passkey # used to auth against periphery
MONITOR_WEBHOOK_SECRET: a_random_secret # used to authenticate incoming webhooks
MONITOR_JWT_SECRET: a_random_jwt_secret # Optional. If empty, will have to log in again on restart.
## AUTH
MONITOR_LOCAL_AUTH: true # the default is false.
# MONITOR_GITHUB_OAUTH_ENABLED: true # also support google oauth
# MONITOR_GITHUB_OAUTH_ID: your_oauth_id
# MONITOR_GITHUB_OAUTH_SECRET: your_oauth_secret
## AWS
# MONITOR_AWS_ACCESS_KEY_ID: your_aws_key_id
# MONITOR_AWS_SECRET_ACCESS_KEY: your_secret_access_key
## HETZNER
# MONITOR_HETZNER_TOKEN: your_hetzner_token
networks:
- proxy
monitor-mongo:
container_name: monitor_db
image: mongo
command: --quiet # suppress mongo logs a bit
restart: unless-stopped
logging:
driver: local
ports:
- 27017:27017
volumes:
- ./db-data:/data/db
environment:
MONGO_INITDB_ROOT_USERNAME: admin # change these
MONGO_INITDB_ROOT_PASSWORD: admin
networks:
- proxy
networks:
proxy:
external: true