aboutsummaryrefslogtreecommitdiff
path: root/services/outline/compose.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'services/outline/compose.yaml')
-rw-r--r--services/outline/compose.yaml64
1 files changed, 64 insertions, 0 deletions
diff --git a/services/outline/compose.yaml b/services/outline/compose.yaml
new file mode 100644
index 0000000..f52a075
--- /dev/null
+++ b/services/outline/compose.yaml
@@ -0,0 +1,64 @@
+networks:
+ default:
+ proxy:
+ external: true
+
+volumes:
+ data:
+ postgres:
+
+services:
+ outline:
+ image: docker.getoutline.com/outlinewiki/outline:latest
+ env_file: .env
+ volumes:
+ - data:/var/lib/outline/data
+ networks:
+ - default
+ - proxy
+ labels:
+ traefik.enable: true
+ traefik.http.routers.outline.rule: Host(`outline.4d6178.work`)
+ traefik.http.services.outline.loadbalancer.server.port: 3000
+ traefik.http.routers.outline.entrypoints: websecure
+ traefik.http.routers.outline.tls: true
+ traefik.http.routers.outline.tls.certresolver: le
+ depends_on:
+ postgres:
+ condition: service_healthy
+ redis:
+ condition: service_healthy
+ restart: unless-stopped
+
+ redis:
+ image: redis
+ env_file: .env
+ volumes:
+ - /opt/outline/redis.conf:/redis.conf
+ command: ["redis-server", "/redis.conf"]
+ networks:
+ - default
+ healthcheck:
+ test: ["CMD", "redis-cli", "ping"]
+ interval: 10s
+ timeout: 30s
+ retries: 3
+ restart: unless-stopped
+
+ postgres:
+ image: postgres
+ env_file: .env
+ volumes:
+ - postgres:/var/lib/postgresql/data
+ healthcheck:
+ test: ["CMD", "pg_isready", "-d", "outline", "-U", "outline"]
+ interval: 30s
+ timeout: 20s
+ retries: 3
+ networks:
+ - default
+ environment:
+ POSTGRES_USER: 'outline'
+ POSTGRES_PASSWORD: 'outline'
+ POSTGRES_DB: 'outline'
+ restart: unless-stopped