BookstackBuch schreibenDatenbankDockerDocker-ComposeMariaDBWiki

Wiki mit Bookstack und Docker-Compose einrichten

image_print

Mit Docker Compose lassen sich Docker Container quasi anhand eines Bauplans automatisiert ausführen, die Docker Compose Datei wird im YAML Format gespeichert.

Bookstack ist ein Wiki System, in dem man Texte innerhalb virteller Regale und Bücher speichern und durchsuchen kann.

Los gehts:

1. Docker Compose File anlegen

nano bookstack-docker-compose.yaml


version: '3'

services:
  mariadb:
    image: mariadb
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: xxxxxxxxxxxxxxxxxx
      MYSQL_DATABASE: bookstack
      MYSQL_USER: bookstack_user
      MYSQL_PASSWORD: qcpassed
    command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    volumes:
      - mariadb_data:/var/lib/mysql
      - ./mariadb-init:/docker-entrypoint-initdb.d
      - /DEVELOP/_DOCKER/mariadb-config/my.cnf:/etc/mysql/my.cnf
    ports:
      - "3307:3306"  # Port 3306 nach außen veröffentlichen

  bookstack:
    image: linuxserver/bookstack
    restart: always
    environment:
      DB_HOST: mariadb
      DB_DATABASE: bookstack
      DB_USERNAME: bookstack_user
      DB_PASSWORD: xxxxxxxxxxxxxxxxxx
      APP_URL: http://10.0.0.5:6875   # Ändere dies auf die IP-Adresse und den gewünschten Port
    ports:
      - "6875:80"  # You can change the port if needed
    depends_on:
      - mariadb

volumes:
  mariadb_data:
    driver: local

2. Verzeichnisse erstellen

mkdir mariadb-config

mkdir mariadb-data

mkdir mariadb-init

3. MariaDB Configuration für Docker kopieren

cp /etc/mysql/my.cnf /Docker_zielverzeichnis

4. SQL Script für Datenbank Erstellung speichern

nano init.sql

CREATE DATABASE IF NOT EXISTS bookstack;
GRANT ALL ON bookstack.* TO 'bookstack_user'@'%' IDENTIFIED BY 'mein password xxxxxxxxxxxx';
FLUSH PRIVILEGES;

5. URL im Reverse Proxy Nginx eintragen

nano /etc/nginx/sites-available/develop

 location /bookstack {
        proxy_pass http://10.0.0.5:6875;  # Ändere dies auf die IP-Adresse und den Port von BookStack
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

6. Docker Container erstellen lassen und ausführen

docker-compose -f bookstack-docker-compose.yaml up -d

7. Bookstack aufrufen, anmelden und Standart Zugangsdaten ändern

Auf meinem Testserver gebe ich http://10.0.0.5/bookstack im Browser ein

Mit den Standart-Zugangsdaten anmelden:

Anmeldename: admin@admin.com

Passwort: password

Unter „Mein Account“ sollte man das Passwort umgehend ändern.

Herzlichen Glückwunsch, wenn du soweit gekommen bist, wurde Bookstack korrekt eingerichtet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert