aboutsummaryrefslogtreecommitdiff
path: root/build/docker/docker-compose.yml
diff options
context:
space:
mode:
Diffstat (limited to 'build/docker/docker-compose.yml')
-rw-r--r--build/docker/docker-compose.yml52
1 files changed, 52 insertions, 0 deletions
diff --git a/build/docker/docker-compose.yml b/build/docker/docker-compose.yml
new file mode 100644
index 00000000..9397673f
--- /dev/null
+++ b/build/docker/docker-compose.yml
@@ -0,0 +1,52 @@
+version: "3.4"
+
+services:
+ postgres:
+ hostname: postgres
+ image: postgres:15-alpine
+ restart: always
+ volumes:
+ # This will create a docker volume to persist the database files in.
+ # If you prefer those files to be outside of docker, you'll need to change this.
+ - dendrite_postgres_data:/var/lib/postgresql/data
+ environment:
+ POSTGRES_PASSWORD: itsasecret
+ POSTGRES_USER: dendrite
+ POSTGRES_DATABASE: dendrite
+ healthcheck:
+ test: ["CMD-SHELL", "pg_isready -U dendrite"]
+ interval: 5s
+ timeout: 5s
+ retries: 5
+ networks:
+ - internal
+
+ monolith:
+ hostname: monolith
+ image: matrixdotorg/dendrite-monolith:latest
+ ports:
+ - 8008:8008
+ - 8448:8448
+ volumes:
+ - ./config:/etc/dendrite
+ # The following volumes use docker volumes, change this
+ # if you prefer to have those files outside of docker.
+ - dendrite_media:/var/dendrite/media
+ - dendrite_jetstream:/var/dendrite/jetstream
+ - dendrite_search_index:/var/dendrite/searchindex
+ depends_on:
+ postgres:
+ condition: service_healthy
+ networks:
+ - internal
+ restart: unless-stopped
+
+networks:
+ internal:
+ attachable: true
+
+volumes:
+ dendrite_postgres_data:
+ dendrite_media:
+ dendrite_jetstream:
+ dendrite_search_index: \ No newline at end of file