64 lines
1.7 KiB
YAML
64 lines
1.7 KiB
YAML
## Example Docker Compose configuration
|
|
##
|
|
## Use this as a template to set up docker-compose, or as guide to set up other
|
|
## orchestration services
|
|
version: '2'
|
|
|
|
services:
|
|
api:
|
|
build:
|
|
context: ./server
|
|
depends_on:
|
|
- sql
|
|
- elasticsearch
|
|
environment:
|
|
## These should be the names of the dependent containers listed above,
|
|
## or FQDNs/IP addresses if these services are running outside of Docker
|
|
POSTGRES_HOST: sql
|
|
ESEARCH_HOST: elasticsearch
|
|
## Credentials for database:
|
|
POSTGRES_USER:
|
|
POSTGRES_PASSWORD:
|
|
## Commented Values are Default:
|
|
#POSTGRES_DB: defaults to same as POSTGRES_USER
|
|
#POSTGRES_PORT: 5432
|
|
#ESEARCH_PORT: 9200
|
|
#ESEARCH_INDEX: szurubooru
|
|
#LOG_SQL: 0 (1 for verbose SQL logs)
|
|
volumes:
|
|
- "${MOUNT_DATA}:/data"
|
|
- "./server/config.yaml:/opt/app/config.yaml"
|
|
client:
|
|
build:
|
|
context: ./client
|
|
args:
|
|
BUILD_INFO:
|
|
depends_on:
|
|
- api
|
|
environment:
|
|
BACKEND_HOST: api
|
|
volumes:
|
|
- "${MOUNT_DATA}:/data:ro"
|
|
ports:
|
|
- "${PORT}:80"
|
|
sql:
|
|
image: postgres:alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_USER:
|
|
POSTGRES_PASSWORD:
|
|
volumes:
|
|
- "${MOUNT_SQL}:/var/lib/postgresql/data"
|
|
elasticsearch:
|
|
image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.3.1
|
|
environment:
|
|
## Specifies the Java heap size used
|
|
## Read
|
|
## https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
|
|
## for more info
|
|
ES_JAVA_OPTS: -Xms512m -Xmx512m
|
|
volumes:
|
|
- index:/usr/share/elasticsearch/data
|
|
|
|
volumes:
|
|
index: # Scratch space for ElasticSearch index, will be rebuilt if lost
|