Aisle Organisation

BookStack

A simple wiki for your documentation.

Add to my serverdocker-compose generator (French)Compare alternatives (French)Official documentation

What is it for?

BookStack organises documentation like a library: shelves, books, chapters and pages. The editor is visual, no code. Ideal to document a home, a club or a project.

Who is it for?

People who want to document something properly, together.

After installing

  1. Log in with admin@admin.com / password, then change the email and password right away.

The docker-compose

Example behind Traefik. To adapt it (Nginx Proxy Manager, local port…) with a line-by-line explanation, use the generator (in French).

# docker-compose.yml : BookStack
services:
  bookstack:
    image: lscr.io/linuxserver/bookstack:latest
    container_name: bookstack
    restart: unless-stopped
    depends_on:
      - db
    environment:
      PUID: "1000"
      PGID: "1000"
      TZ: Europe/Paris
      APP_URL: https://wiki.mydomain.com
      APP_KEY: "${APP_KEY}"
      DB_HOST: db
      DB_PORT: "3306"
      DB_USERNAME: bookstack
      DB_PASSWORD: "${DB_PASSWORD}"
      DB_DATABASE: bookstack
    volumes:
      - ./config:/config
    networks:
      - traefik
      - default
    labels:
      - traefik.enable=true
      - traefik.http.routers.bookstack.rule=Host(`wiki.mydomain.com`)
      - traefik.http.routers.bookstack.entrypoints=websecure
      - traefik.http.routers.bookstack.tls.certresolver=letsencrypt
      - traefik.http.services.bookstack.loadbalancer.server.port=80
      - traefik.docker.network=traefik

  db:
    image: lscr.io/linuxserver/mariadb:latest
    container_name: bookstack-db
    restart: unless-stopped
    environment:
      PUID: "1000"
      PGID: "1000"
      TZ: Europe/Paris
      MYSQL_ROOT_PASSWORD: "${DB_ROOT_PASSWORD}"
      MYSQL_DATABASE: bookstack
      MYSQL_USER: bookstack
      MYSQL_PASSWORD: "${DB_PASSWORD}"
    volumes:
      - ./db:/config

networks:
  traefik:
    external: true