Introduces `komodo/compose.env` to provide a centralized and comprehensive set of environment variables for configuring Komodo Core and Periphery services. This file simplifies Docker Compose deployments by offering pre-defined variables for database, security, monitoring, authentication (local, OIDC, OAuth), and AWS integrations, complete with inline documentation and links to full variable lists.
86 lines
2.7 KiB
YAML
86 lines
2.7 KiB
YAML
################################
|
|
# 🦎 KOMODO COMPOSE - MONGO 🦎 #
|
|
################################
|
|
|
|
## This compose file will deploy:
|
|
## 1. MongoDB
|
|
## 2. Komodo Core
|
|
## 3. Komodo Periphery
|
|
services:
|
|
mongo:
|
|
image: mongo
|
|
container_name: mongo
|
|
labels:
|
|
komodo.skip: # Prevent Komodo from stopping with StopAllContainers
|
|
command: --quiet --wiredTigerCacheSizeGB 0.25
|
|
env_file: ./compose.env
|
|
restart: unless-stopped
|
|
# ports:
|
|
# - 27017:27017
|
|
volumes:
|
|
- /mnt/docker/home/komodo/data/db/data:/data/db
|
|
- /mnt/docker/home/komodo/data/db/config:/data/configdb
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: admin
|
|
MONGO_INITDB_ROOT_PASSWORD: AA103626bb!
|
|
networks:
|
|
- komodo-backend
|
|
|
|
core:
|
|
container_name: komodo-core
|
|
image: ghcr.io/moghtech/komodo-core:${COMPOSE_KOMODO_IMAGE_TAG:-latest}
|
|
labels:
|
|
komodo.skip: # Prevent Komodo from stopping with StopAllContainers
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- mongo
|
|
#ports:
|
|
# - 9120:9120
|
|
env_file: compose.env
|
|
networks:
|
|
- komodo-backend
|
|
- pangolin-home
|
|
environment:
|
|
KOMODO_DATABASE_ADDRESS: mongo:27017
|
|
KOMODO_DATABASE_USERNAME: admin
|
|
KOMODO_DATABASE_PASSWORD: AA103626bb!
|
|
volumes:
|
|
## Core cache for repos for latest commit hash / contents
|
|
- /mnt/docker/home/komodo/data/repo-cache/data:/repo-cache
|
|
## Store sync files on server
|
|
# - /path/to/syncs:/syncs
|
|
## Optionally mount a custom core.config.toml
|
|
# - /path/to/core.config.toml:/config/config.toml
|
|
## Allows for systemd Periphery connection at
|
|
## "http://host.docker.internal:8120"
|
|
# extra_hosts:
|
|
# - host.docker.internal:host-gateway
|
|
|
|
## Deploy Periphery container using this block,
|
|
## or deploy the Periphery binary with systemd using
|
|
## https://github.com/moghtech/komodo/tree/main/scripts
|
|
periphery:
|
|
container_name: periphery
|
|
image: ghcr.io/moghtech/komodo-periphery:${COMPOSE_KOMODO_IMAGE_TAG:-latest}
|
|
labels:
|
|
komodo.skip: # Prevent Komodo from stopping with StopAllContainers
|
|
restart: unless-stopped
|
|
env_file: compose.env
|
|
networks:
|
|
- komodo-backend
|
|
volumes:
|
|
## Mount external docker socket
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
## Allow Periphery to see processes outside of container
|
|
- /proc:/proc
|
|
## Specify the Periphery agent root directory.
|
|
## Must be the same inside and outside the container,
|
|
## or docker will get confused. See https://github.com/moghtech/komodo/discussions/180.
|
|
## Default: /etc/komodo.
|
|
- ${PERIPHERY_ROOT_DIRECTORY:-/etc/komodo}:${PERIPHERY_ROOT_DIRECTORY:-/etc/komodo}
|
|
|
|
networks:
|
|
komodo-backend:
|
|
driver: overlay
|
|
pangolin-home:
|
|
external: true |