Files
danbooru/docker-compose.yaml
2021-05-26 02:44:10 -05:00

78 lines
2.2 KiB
YAML

# A Docker Compose file that launches a minimal Danbooru instance. This is
# suitable as a quick demo or for personal use, not for public-facing sites.
#
# This will start a Danbooru instance running on http://localhost.
#
# Usage:
#
# docker-compose up
# docker-compose down
#
# References:
#
# * https://docs.docker.com/get-docker/
# * https://docs.docker.com/compose/install/
# * https://docs.docker.com/compose/compose-file/compose-versioning
# * https://docs.docker.com/compose/release-notes
# Version 3.4 is the latest version that is supported by the version of Docker
# Compose shipped with Ubuntu 18.04 LTS (version 1.17.4).
version: "3.4"
services:
danbooru:
image: evazion/danbooru
ports:
- "80:3000"
environment:
- RAILS_ENV=production
- RAILS_SERVE_STATIC_FILES=true
- DATABASE_URL=postgresql://danbooru@postgres/danbooru
- DANBOORU_REDIS_URL=redis://redis:6379
- DANBOORU_CANONICAL_URL=http://localhost
volumes:
- "danbooru-images:/danbooru/public/data"
depends_on:
- postgres
command: ["bash", "-c", "bin/rails db:setup; bin/rails db:migrate && bin/rails server -b 0.0.0.0"]
user: root
cron:
image: evazion/danbooru
environment:
- RAILS_ENV=production
- DATABASE_URL=postgresql://danbooru@postgres/danbooru
- DANBOORU_REDIS_URL=redis://redis:6379
- DANBOORU_CANONICAL_URL=http://localhost
depends_on:
- danbooru
command: ["bash", "-c", "bin/wait-for-http http://danbooru:3000 5s && bin/rails danbooru:cron"]
delayed_jobs:
image: evazion/danbooru
environment:
- RAILS_ENV=production
- DATABASE_URL=postgresql://danbooru@postgres/danbooru
- DANBOORU_REDIS_URL=redis://redis:6379
- DANBOORU_CANONICAL_URL=http://localhost
depends_on:
- danbooru
command: ["bash", "-c", "bin/wait-for-http http://danbooru:3000 5s && bin/delayed_job run"]
redis:
image: redis
postgres:
image: evazion/postgres
environment:
POSTGRES_USER: danbooru
POSTGRES_HOST_AUTH_METHOD: trust
volumes:
- "danbooru-data:/var/lib/postgresql/data"
volumes:
danbooru-images:
name: danbooru-images
danbooru-data:
name: danbooru-data