--- services: bookstack: image: linuxserver/bookstack:${BOOKSTACK_VERSION} restart: unless-stopped depends_on: - mariadb environment: ### LinuxServer.io stuff - PUID=1000 - PGID=1000 - TZ=${GLOBAL_TIMEZONE} ### Normal Bookstack stuff - APP_URL="${BOOKSTACK_URL}" - DB_HOST=mariadb:3306 - DB_DATABASE=${MARIADB_DATABASE} - DB_PASSWORD=${MARIADB_PASSWORD} - DB_USERNAME=${MARIADB_USER} - LOG_FAILED_LOGIN_MESSAGE="Failed login for %u" - MAIL_DRIVER=${BOOKSTACK_MAIL_DRIVER} - MAIL_HOST=${BOOKSTACK_MAIL_HOST} - MAIL_PORT=${BOOKSTACK_MAIL_PORT} - MAIL_ENCRYPTION=${BOOKSTACK_MAIL_ENCRYPTION} - MAIL_FROM=${BOOKSTACK_MAIL_FROM} - MAIL_FROM_NAME=${BOOKSTACK_MAIL_FROM_NAME} - MAIL_USERNAME=${BOOKSTACK_MAIL_USERNAME} - MAIL_PASSWORD=${BOOKSTACK_MAIL_PASSWORD} labels: ### Section Træfik - traefik.enable=${TRAEFIK_ENABLED} - traefik.docker.network=${TRAEFIK_NETWORK} ## HTTP - traefik.http.routers.http-${TRAEFIK_ROUTER}.entrypoints=http # redirect to HTTPS only - traefik.http.routers.http-${TRAEFIK_ROUTER}.middlewares=${TRAEFIK_HTTP_MIDDLEWARES} - traefik.http.routers.http-${TRAEFIK_ROUTER}.rule=${TRAEFIK_MATCHRULE} ## HTTPS - traefik.http.routers.https-${TRAEFIK_ROUTER}.entrypoints=https # configure the exposed service - traefik.http.routers.https-${TRAEFIK_ROUTER}.middlewares=${TRAEFIK_HTTPS_MIDDLEWARES} - traefik.http.routers.https-${TRAEFIK_ROUTER}.rule=${TRAEFIK_MATCHRULE} # enable TLS and its certificate provider - traefik.http.routers.https-${TRAEFIK_ROUTER}.tls=${TRAEFIK_TLSENABLED} - traefik.http.routers.https-${TRAEFIK_ROUTER}.tls.certresolver=${TRAEFIK_CERTRESOLVER} # specify a service so a custom port can be used - traefik.http.services.${TRAEFIK_SERVICE}.loadbalancer.server.port=${TRAEFIK_SERVICE_PORT} ### Section Diun - diun.enable=${BOOKSTACK_DIUN_ENABLE} - diun.watch_repo=${BOOKSTACK_DIUN_WATCHREPO} - diun.sort_tags=${BOOKSTACK_DIUN_SORTALGO} - diun.include_tags=${BOOKSTACK_DIUN_INCLUDE} - diun.exclude_tags=${BOOKSTACK_DIUN_EXCLUDE} networks: - internal - traefik volumes: - ${BOOKSTACK_DATA}:/config mariadb: image: mariadb:${MARIADB_VERSION} restart: unless-stopped environment: - MARIADB_AUTO_UPGRADE=true - MARIADB_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD} - MARIADB_DATABASE=${MARIADB_DATABASE} - MARIADB_PASSWORD=${MARIADB_PASSWORD} - MARIADB_USER=${MARIADB_USER} labels: ### Section Diun - diun.enable=${MARIADB_DIUN_ENABLE} - diun.watch_repo=${MARIADB_DIUN_WATCHREPO} - diun.sort_tags=${MARIADB_DIUN_SORTALGO} - diun.include_tags=${MARIADB_DIUN_INCLUDE} - diun.exclude_tags=${MARIADB_DIUN_EXCLUDE} networks: - internal volumes: - ${MARIADB_DATA}:/var/lib/mysql networks: internal: traefik: external: true name: ${TRAEFIK_NETWORK}