88 lines
2.2 KiB
YAML
88 lines
2.2 KiB
YAML
services:
|
|
postgres:
|
|
container_name: outline_postgres
|
|
env_file:
|
|
- .env
|
|
image: postgres:14
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-size: 50m
|
|
max-file: "3"
|
|
networks:
|
|
traefik: null
|
|
restart: unless-stopped
|
|
volumes:
|
|
- postgres:/var/lib/postgresql/data
|
|
|
|
redis:
|
|
container_name: outline_redis
|
|
env_file:
|
|
- .env
|
|
healthcheck:
|
|
test: [ "CMD", "redis-cli", "ping" ]
|
|
interval: 10s
|
|
timeout: 30s
|
|
retries: 3
|
|
image: redis:7
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-size: 50m
|
|
max-file: "3"
|
|
networks:
|
|
traefik: null
|
|
restart: unless-stopped
|
|
volumes:
|
|
- redis:/data
|
|
|
|
outline:
|
|
container_name: outline_server
|
|
depends_on:
|
|
- postgres
|
|
- redis
|
|
env_file:
|
|
- .env
|
|
image: outlinewiki/outline:latest
|
|
labels:
|
|
traefik.docker.network: traefik
|
|
traefik.enable: true
|
|
traefik.http.routers.outline.entrypoints: websecure
|
|
traefik.http.routers.outline.rule: Host(`outline.alexlebens.net`)
|
|
traefik.http.routers.outline.service: outline
|
|
traefik.http.services.outline.loadbalancer.server.port: 3000
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-size: 50m
|
|
max-file: "3"
|
|
networks:
|
|
traefik: null
|
|
restart: always
|
|
|
|
networks:
|
|
traefik:
|
|
name: traefik
|
|
external: true
|
|
|
|
volumes:
|
|
storage:
|
|
driver: local
|
|
driver_opts:
|
|
type: none
|
|
o: bind
|
|
device: /var/lib/docker/volumes/partition/outline_storage
|
|
|
|
postgres:
|
|
driver: local
|
|
driver_opts:
|
|
type: none
|
|
o: bind
|
|
device: /var/lib/docker/volumes/partition/outline_postgres
|
|
|
|
redis:
|
|
driver: local
|
|
driver_opts:
|
|
type: none
|
|
o: bind
|
|
device: /var/lib/docker/volumes/partition/outline_redis |