Add compose.yml
This commit is contained in:
68
compose.yml
Normal file
68
compose.yml
Normal file
@@ -0,0 +1,68 @@
|
||||
name: stoat
|
||||
|
||||
services:
|
||||
# MongoDB: Database
|
||||
database:
|
||||
image: docker.io/mongo
|
||||
restart: always
|
||||
volumes:
|
||||
- ./data/db:/data/db
|
||||
healthcheck:
|
||||
test: echo 'db.runCommand("ping").ok' | mongosh localhost:27017/test --quiet
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
start_period: 10s
|
||||
|
||||
# Redis: Event message broker & KV store
|
||||
redis:
|
||||
image: docker.io/eqalpha/keydb
|
||||
restart: always
|
||||
|
||||
# RabbitMQ: Internal message broker
|
||||
|
||||
source: ./Revolt.toml
|
||||
target: /Revolt.toml
|
||||
restart: always
|
||||
|
||||
# Metadata and image proxy
|
||||
january:
|
||||
image: ghcr.io/stoatchat/proxy:v0.11.1
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./Revolt.toml
|
||||
target: /Revolt.toml
|
||||
restart: always
|
||||
|
||||
# Tenor proxy
|
||||
gifbox:
|
||||
image: ghcr.io/stoatchat/gifbox:v0.11.1
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./Revolt.toml
|
||||
target: /Revolt.toml
|
||||
restart: always
|
||||
|
||||
# Regular task daemon
|
||||
restart: always
|
||||
|
||||
# Create buckets for minio.
|
||||
createbuckets:
|
||||
image: docker.io/minio/mc
|
||||
depends_on:
|
||||
- minio
|
||||
entrypoint: >
|
||||
/bin/sh -c "
|
||||
while ! /usr/bin/mc ready minio; do
|
||||
/usr/bin/mc alias set minio http://minio:9000 minioautumn minioautumn;
|
||||
echo 'Waiting minio...' && sleep 1;
|
||||
done;
|
||||
/usr/bin/mc mb minio/revolt-uploads;
|
||||
exit 0;
|
||||
"
|
||||
|
||||
# Web App
|
||||
web:
|
||||
image: ghcr.io/stoatchat/for-web:addb6b7
|
||||
restart: always
|
||||
env_file: .env.web
|
||||
Reference in New Issue
Block a user