--- /dev/null
+---
+
+# This is an example complete example docker-compose.yml
+# file for a linuxserver.io based BookStack setup
+# using the linuxserver.io MariaDB conatiner.
+
+# ENSURE YOU PAY ATTENTION TO ALL COMMENTS BELOW.
+# Many of the values are just examples, and you WILL
+# have to make changes to suit your environment.
+
+# These containers are maintained by the linuxserver.io
+# team, not the official BookStack project.
+
+# For non-commented options, refer to the linuxserver documentation:
+# https://docs.linuxserver.io/images/docker-bookstack/#environment-variables-e
+
+services:
+
+ # The container for BookStack itself
+ bookstack:
+ # You should update the version here to match the latest
+ # release of BookStack: https://github.com/BookStackApp/BookStack/releases
+ # You'll change this when wanting to update the version of BookStack used.
+ image: lscr.io/linuxserver/bookstack:24.12.1
+ container_name: bookstack
+ environment:
+ - PUID=1000
+ - PGID=1000
+ - TZ=Etc/UTC
+ # APP_URL must be set as the base URL you'd expect to access BookStack
+ # on via the browser. The default shown here is what you might use if accessing
+ # direct from the browser on the docker host, hence the use of the port as configured below.
+ - APP_URL=http://localhost:6875
+ # APP_KEY must be a unique key. Generate your own by running
+ # docker run -it --rm --entrypoint /bin/bash lscr.io/linuxserver/bookstack:latest appkey
+ # You should keep the "base64:" part for the option value.
+ - APP_KEY=base64:3qjlIoUX4Tw6fUQgZcxMbz6lb8+dAzqpvItqHvahW1c=
+
+ # The below database details are purposefully aligned with those
+ # configuted for the "mariadb" service below:
+ - DB_HOST=mariadb
+ - DB_PORT=3306
+ - DB_DATABASE=bookstack
+ - DB_USERNAME=bookstack
+ - DB_PASSWORD=bookstack8432
+ volumes:
+ # You generally only ever need to map this one volume.
+ # This maps it to a "bookstack_app_data" folder in the same
+ # directory as this compose config file.
+ - ./bookstack_app_data:/config
+ ports:
+ # This exposes port 6875 for general web access.
+ # Commonly you'd have a reverse proxy in front of this,
+ # redirecting incoming requests to this port.
+ - 6875:80
+ restart: unless-stopped
+
+ # The container for the database which BookStack will use to store
+ # most of its core data/content.
+ mariadb:
+ # You should update the version here to match the latest
+ # main version of the linuxserver mariadb container version:
+ # https://github.com/linuxserver/docker-mariadb/pkgs/container/mariadb/versions?filters%5Bversion_type%5D=tagged
+ image: lscr.io/linuxserver/mariadb:11.4.4
+ container_name: mariadb
+ environment:
+ - PUID=1000
+ - PGID=1000
+ - TZ=Etc/UTC
+ # You may want to change the credentials used below,
+ # but be aware the latter three options need to align
+ # with the DB_* options for the BookStack container.
+ - MYSQL_ROOT_PASSWORD=mysupersecretrootpassword
+ - MYSQL_DATABASE=bookstack
+ - MYSQL_USER=bookstack
+ - MYSQL_PASSWORD=bookstack8432
+ volumes:
+ # You generally only ever need to map this one volume.
+ # This maps it to a "bookstack_db_data" folder in the same
+ # directory as this compose config file.
+ - ./bookstack_db_data:/config
+
+ # These ports are commented out as you don't really need this port
+ # exposed for normal use, mainly only if connecting direct the the
+ # database externally. Otherwise, this risks exposing access to the
+ # database when not needed.
+ # ports:
+ # - 3306:3306
+ restart: unless-stopped
\ No newline at end of file