forked from github-starred/komodo
* setup network page * add Network, Image, Container * Docker ListItems and Inspects * frontend build * dev0 * network info working * fix cargo lock * dev1 * pages for the things * implement Active in dashboard * RunBuild update trigger list refresh * rename deployment executions to StartDeployment etc * add server level container control * dev2 * add Config field to Image * can get image labels from Config.Labels * mount container page * server show resource count * add GetContainerLog api * add _AllContainers api * dev3 * move ResourceTarget to entities mod * GetResourceMatchingContainer api * connect container to resource * dev4 add volume names to container list items * ts types * volume / image / network unused management * add image history to image page * fix PruneContainers incorret Operation * update cache for server for server after server actions * dev5 * add singapore to Hetzner * implement delete single network / image / volume api * dev6 * include "in use" on Docker Lists * add docker resource delete buttons * is nice * fix volume all in use * remove google font dependency * use host networking in test compose * implement Secret Variables (hidden in logs) * remove unneeded borrow * interpolate variables / secrets into extra args / onclone / onpull / command etc * validate empty strings before SelectItem * rename everything to Komodo * rename workspace to komodo * rc1
85 lines
3.2 KiB
YAML
85 lines
3.2 KiB
YAML
######################
|
|
# ALL IN ONE COMPOSE #
|
|
######################
|
|
|
|
## This compose file will bring up both Core and Periphery in containers.
|
|
## A "default" server pointing to the local Periphery will be waiting in the UI on first startup.
|
|
|
|
services:
|
|
komodo-core:
|
|
image: ghcr.io/mbecker20/komodo:latest ## use ghcr.io/mbecker20/komodo:latest-aarch64 for arm support
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- komodo-mongo
|
|
logging:
|
|
driver: local # enable log rotation by default. see `https://docs.docker.com/config/containers/logging/local/`
|
|
networks:
|
|
- komodo-network
|
|
ports:
|
|
- 9120:9120
|
|
environment: # https://github.com/mbecker20/komodo/blob/main/config_example/core.config.example.toml
|
|
KOMODO_HOST: https://demo.komo.do # CHANGEME
|
|
KOMODO_TITLE: Komodo # Change the app title, displayed in the browser tab.
|
|
KOMODO_ENSURE_SERVER: http://komodo-periphery:8120 # Creates the "default" server.
|
|
## MONGO
|
|
KOMODO_MONGO_ADDRESS: komodo-mongo:27017
|
|
KOMODO_MONGO_USERNAME: admin # match db credentials ones below
|
|
KOMODO_MONGO_PASSWORD: admin
|
|
## KEYS
|
|
KOMODO_PASSKEY: a_random_passkey # used to auth against periphery
|
|
KOMODO_WEBHOOK_SECRET: a_random_secret # used to authenticate incoming webhooks
|
|
KOMODO_JWT_SECRET: a_random_jwt_secret # Optional. If empty, will have to log in again on restart.
|
|
## AUTH
|
|
KOMODO_LOCAL_AUTH: true # the default is false.
|
|
# KOMODO_GITHUB_OAUTH_ENABLED: true # also support google oauth
|
|
# KOMODO_GITHUB_OAUTH_ID: your_oauth_id
|
|
# KOMODO_GITHUB_OAUTH_SECRET: your_oauth_secret
|
|
## AWS
|
|
# KOMODO_AWS_ACCESS_KEY_ID: your_aws_key_id
|
|
# KOMODO_AWS_SECRET_ACCESS_KEY: your_secret_access_key
|
|
## HETZNER
|
|
# KOMODO_HETZNER_TOKEN: your_hetzner_token
|
|
|
|
## Deploy periphery container using this block,
|
|
## or deploy it on the host directly using https://github.com/mbecker20/komodo/tree/main/scripts
|
|
komodo-periphery:
|
|
image: ghcr.io/mbecker20/periphery:latest # use ghcr.io/mbecker20/periphery:latest-aarch64 for arm support
|
|
logging:
|
|
driver: local
|
|
networks:
|
|
- komodo-network
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- komodo-repos:/etc/komodo/repos # manage repos in a docker volume, or change it to an accessible host directory.
|
|
- komodo-stacks:/etc/komodo/stacks # manage stack files in a docker volume, or change it to an accessible host directory.
|
|
# environment:
|
|
# # If the disk size is overreporting, can use one of these to
|
|
# # whitelist / blacklist the disks to filter them, whichever is easier.
|
|
# PERIPHERY_INCLUDE_DISK_MOUNTS: /etc/komodo/repos
|
|
# PERIPHERY_EXCLUDE_DISK_MOUNTS: /snap
|
|
|
|
komodo-mongo:
|
|
image: mongo
|
|
command: --quiet # suppress mongo logs a bit
|
|
restart: unless-stopped
|
|
logging:
|
|
driver: local
|
|
networks:
|
|
- komodo-network
|
|
ports:
|
|
- 27017:27017
|
|
volumes:
|
|
- db-data:/data/db
|
|
- db-config:/data/configdb
|
|
environment:
|
|
MONGO_INITDB_ROOT_USERNAME: admin # change these
|
|
MONGO_INITDB_ROOT_PASSWORD: admin
|
|
|
|
volumes:
|
|
db-data:
|
|
db-config:
|
|
komodo-repos:
|
|
komodo-stacks:
|
|
|
|
networks:
|
|
komodo-network: {} |