diff --git a/docker-templates/bookstack/docker-compose.yaml b/docker-templates/bookstack/docker-compose.yaml new file mode 100644 index 0000000..e39354c --- /dev/null +++ b/docker-templates/bookstack/docker-compose.yaml @@ -0,0 +1,79 @@ +services: + bookstack: + image: lscr.io/linuxserver/bookstack:latest + container_name: bookstack + restart: unless-stopped + networks: + - homelab-network + - traefik-network + ports: + - '6875:80' + volumes: + - ./config:/config + environment: + - PUID=${PUID} + - PGID=${PGID} + - APP_URL=https://bookstack.${DOMAIN} + - DB_HOST=bookstack-db + - DB_PORT=3306 + - DB_DATABASE=bookstack + - DB_USERNAME=bookstack + - DB_PASSWORD=${BOOKSTACK_DB_PASSWORD} + - APP_KEY=base64:NsYD8+8MAvtBhK8xw9p8pxQDy4x8aOQi/78M3CsseAw= + healthcheck: + test: ['CMD', 'curl', '-f', 'http://localhost/'] + interval: 30s + timeout: 10s + retries: 3 + start_period: 60s + depends_on: + - bookstack-db + labels: + # CHANGE THE DOMAIN NAME HERE + - 'traefik.http.routers.bookstack.rule=Host(`bookstack.kelinreij.duckdns.org`)' + + - com.getarcaneapp.arcane.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/bookstack.svg + - 'com.centurylinklabs.watchtower.enable=true' + - 'homelab.category=productivity' + - 'homelab.description=Documentation and wiki platform' + - 'traefik.enable=true' + - 'traefik.docker.network=traefik-network' + - 'traefik.http.routers.bookstack.entrypoints=websecure' + - 'traefik.http.routers.bookstack.tls.certresolver=letsencrypt' + - 'traefik.http.routers.bookstack.middlewares=authelia@docker' + - 'traefik.http.services.bookstack.loadbalancer.server.port=80' + + bookstack-db: + image: mariadb:10.11 + container_name: bookstack-db + restart: unless-stopped + networks: + - homelab-network + volumes: + - ./db:/var/lib/mysql + environment: + - MYSQL_ROOT_PASSWORD=${BOOKSTACK_DB_ROOT_PASSWORD} + - MYSQL_DATABASE=bookstack + - MYSQL_USER=bookstack + - MYSQL_PASSWORD=${BOOKSTACK_DB_PASSWORD} + labels: + - com.getarcaneapp.arcane.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/mariadb.svg + - 'homelab.category=productivity' + - 'homelab.description=BookStack database' + +networks: + homelab-network: + external: true + traefik-network: + external: true + +x-dockge: + urls: + - https://{$PROXY_URL} + - ${LOCAL_URL} + +x-arcane: + icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/bookstack-light.svg + urls: + - https://{$PROXY_URL} + - https://192.168.4.4:6875 \ No newline at end of file