BookStack installatie via Docker
Dit document beschrijft hoe je BookStack kunt installeren via Docker. De standaard Docker configuratie installeert alles wat benodigd is voor BookStack zelf, behalve de databaseserver. Deze kan toegevoegd worden in de installatie, maar er kan ook verwezen worden naar een losse databaseserver (SQL).
Installatie
Hieronder vindt je een compose.yml configuratie voor de installatie via Docker. Dit is zonder database-server. Je kan hier het stuk van SMTP weghalen wanneer dit niet voor jou van toepassing is.
Docker compose
---
services:
bookstack:
image: lscr.io/linuxserver/bookstack:latest
container_name: bookstack
environment:
- PUID=1000
- PGID=1000
- TZ=CET
- APP_URL=https://fqdn.extension
- APP_KEY=base64:
- APP_DEFAULT_DARK_MODE=true
- DB_HOST=
- DB_PORT=3306
- DB_USERNAME=
- DB_PASSWORD=
- DB_DATABASE=
- ALLOW_ROBOTS=true
# SMTP Configuration
- MAIL_DRIVER=smtp
- MAIL_HOST=
- MAIL_PORT=
- MAIL_USERNAME=
- MAIL_PASSWORD=
- MAIL_ENCRYPTION=SSL
- MAIL_FROM_ADDRESS=
- MAIL_FROM_NAME=BookStack
volumes:
- /path/to/storage/host:/config
ports:
# port external, port internal Docker container
- 6875:80
restart: unless-stopped
Hieronder staat een compose file met een databaseserver. Ik raad aan om dit niet te gebruiken, en een losse databaseserver te gebruiken voor databases. Verander de standaard gegevens.
Docker compose met database
---
services:
bookstack:
image: lscr.io/linuxserver/bookstack:latest
container_name: bookstack
environment:
- PUID=1000
- PGID=1000
- TZ=CET
- APP_URL=https://fqdn.extension
- APP_KEY=base64:
- APP_DEFAULT_DARK_MODE=true
- DB_HOST=
- DB_PORT=3306
- DB_USERNAME=
- DB_PASSWORD=
- DB_DATABASE=
- ALLOW_ROBOTS=true
# SMTP Configuration
- MAIL_DRIVER=smtp
- MAIL_HOST=
- MAIL_PORT=
- MAIL_USERNAME=
- MAIL_PASSWORD=
- MAIL_ENCRYPTION=SSL
- MAIL_FROM_ADDRESS=
- MAIL_FROM_NAME=BookStack
volumes:
- /path/to/storage/host/bookstack/app:/config
ports:
# port external, port internal Docker container
- 6875:80
restart: unless-stopped
depends_on:
- bookstack_db
bookstack_db:
image: linuxserver/mariadb
container_name: bookstack_db
hostname: bookstack_db
environment:
- PUID=1000
- PGID=1000
- MYSQL_ROOT_PASSWORD=ROOTPW
- TZ=Europe/Amsterdam
- MYSQL_DATABASE=bookstackapp
- MYSQL_USER=bookstack
- MYSQL_PASSWORD=USERPW1
volumes:
- /path/to/storage/host/bookstack/database:/config
restart: unless-stopped
Let op, na het starten van de Docker container moet er nog een APP_KEY gegenereerd worden. Dit is een encryptiekey. Dit doe je met: docker run -it --rm --entrypoint /bin/bash lscr.io/linuxserver/bookstack:latest appkey. Deze zal je moeten kopiëren en in de Docker compose file moeten plaatsen. Noteer deze key op een veilige plek!
BookStack is alleen te openen vanaf de url welke je instelt in de Docker compose file. Hier kan je ook een IPv4-adres met poort in noteren. Commando om de url aan te passen: docker exec -it bookstack php /app/www/artisan bookstack:update-url ${OLD_URL} ${NEW_URL}. Let op, pas dit ook aan in je Docker compose file.
Na-installatie
Na het installeren kan je naar de url van de applicatie navigeren. Je kan inloggen met de standaard gegevens:
- Username: [email protected]
- Password: password
Pas dit uiteraard direct aan.