wiki_ghostguild/docker-compose.yml
Jennie Robinson Faber f3302b1c5a Fix docker-compose for DokPloy compose deployment
Use .env instead of outline.env, reference existing named volumes
as external so data persists across DokPloy redeploys.
2026-03-04 17:53:42 +00:00

84 lines
1.8 KiB
YAML

services:
nginx:
image: nginx:alpine
container_name: outline-nginx
restart: unless-stopped
depends_on:
- outline
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
- ./theme:/opt/ghost-guild-wiki-theme:ro
networks:
- default
- dokploy-network
outline:
image: docker.getoutline.com/outlinewiki/outline:latest
container_name: outline
restart: unless-stopped
env_file:
- .env
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
volumes:
- outline-storage:/var/lib/outline/data
postgres:
image: postgres:16-alpine
container_name: outline-postgres
restart: unless-stopped
environment:
POSTGRES_USER: outline
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: outline
volumes:
- postgres-data:/var/lib/postgresql/data
command:
- "postgres"
- "-c"
- "shared_buffers=128MB"
- "-c"
- "max_connections=20"
- "-c"
- "work_mem=4MB"
- "-c"
- "maintenance_work_mem=64MB"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U outline"]
interval: 10s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
container_name: outline-redis
restart: unless-stopped
command: >
redis-server
--maxmemory 64mb
--maxmemory-policy allkeys-lru
volumes:
- redis-data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
networks:
dokploy-network:
external: true
volumes:
outline-storage:
name: code_outline-storage
external: true
postgres-data:
name: code_postgres-data
external: true
redis-data:
name: code_redis-data
external: true