Files
Stoat/compose.yml
2026-02-21 01:07:11 +00:00

68 lines
1.4 KiB
YAML

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