Bookstack

Um einen Bookstack Container einzubinden, sind folgende Schritte durchzuführen:

sudo mkdir -p /opt/containers/bookstack/data/db
sudo mkdir /opt/containers/bookstack/data/bs

Für den Containerstart ist die Datei /opt/containers/bookstack/docker-compose.yml mit folgendem Inhalt anzulegen:

#
# /opt/containers/bookstack/docker-compose.yml
# Ein Bookstack Container mit MariaDB
#
version: '3'
services:
  db:
    image: lscr.io/linuxserver/mariadb:latest
    container_name: bookstack-db
    networks:
      - db-network
    environment:
      - TZ=Europe/Berlin
      - MYSQL_ROOT_PASSWORD=RaRuRickZaubertrick
      - MYSQL_DATABASE=bookstack
      - MYSQL_USER=bookstack
      - MYSQL_PASSWORD=DaKommstDuNieDrauf
    volumes:
      - ./data/db:/config
    restart: unless-stopped
    labels:
      - traefik.enable=false

  app:
    image: lscr.io/linuxserver/bookstack:latest
    container_name: bookstack-app
    networks:
      - db-network
      - proxy
    depends_on:
      - db
    environment:
      - APP_URL=https://book.die-steffens.eu
      - DB_HOST=db
      - DB_PORT=3306
      - DB_DATABASE=bookstack
      - DB_USERNAME=bookstack
      - DB_PASSWORD=DaKommstDuNieDrauf
    restart: unless-stopped
    volumes:
      - ./data/bs:/config
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.bookstack.entrypoints=https"
      - "traefik.http.routers.bookstack.rule=Host(`book.die-steffens.eu`)"
      - "traefik.http.routers.bookstack.tls=true"
      - "traefik.http.routers.bookstack.tls.certresolver=http"
      - "traefik.http.routers.bookstack.service=bookstack"
      - "traefik.http.routers.bookstack.middlewares=secHeaders@file"
      - "traefik.http.services.bookstack.loadbalancer.server.port=80"
      - "traefik.docker.network=proxy"

networks:
  db-network:
    external: false
  proxy:
    external: true

Es werden zwei Container gestartet: Die Datenbank MariaDB und der Bookstack Container. Für die Kommunikation mit der Datenbank wird ein internes Netzwerk eingerichtet, das von Außen nicht zu erreichen ist.

Gestartet und gestoppt wird wie üblich mit:
/opt/containers/bookstack/docker compose -f /opt/containers/bookstack/docker-compose.yml up -d
/opt/containers/bookstack/docker compose -f /opt/containers/bookstack/docker-compose.yml down


Revision #1
Created 2026-09-26 13:20:52 UTC by ralf
Updated 2026-09-26 13:20:52 UTC by ralf