From 0a1e79218754cd7e3ad30c9914117da6b6db509d Mon Sep 17 00:00:00 2001 From: Michel Bats Date: Sat, 4 May 2024 14:06:40 +0200 Subject: [PATCH] New addition: BookStack --- bookstack/.env.sample | 18 ++++++++++++++ bookstack/compose.yml | 40 +++++++++++++++++++++++++++++ bookstack/readme.md | 58 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 116 insertions(+) create mode 100644 bookstack/.env.sample create mode 100644 bookstack/compose.yml create mode 100644 bookstack/readme.md diff --git a/bookstack/.env.sample b/bookstack/.env.sample new file mode 100644 index 0000000..a1d00e4 --- /dev/null +++ b/bookstack/.env.sample @@ -0,0 +1,18 @@ +# Uncomment and change the following variables if you want to use them. +#RESTART=unless-stopped +#SYNOLOGY_VOLUME=volume1 +#STACK_NAME=bookstack +#UID=1024 +#GID=101 +#TZ=Europe/Amsterdam +#BOOKSTACK_CONTAINER_NAME=BookStack +#BOOKSTACK_TAG=latest +#BOOKSTACK_PORT=80 +#BOOKSTACK_APP_URL=https://bookstack.example.com +#BOOKSTACK_MARIADB_CONTAINER_NAME=BookStack-MariaDB +#BOOKSTACK_MARIADB_TAG=latest +#BOOKSTACK_MARIADB_TCP_PORT=3306 +#BOOKSTACK_MARIADB_DATABASE=bookstack +#BOOKSTACK_MARIADB_USER=bookstack +#BOOKSTACK_MARIADB_PASSWORD=bookstack +#BOOKSTACK_MARIADB_ROOT_PASSWORD=bookstack diff --git a/bookstack/compose.yml b/bookstack/compose.yml new file mode 100644 index 0000000..a1873c2 --- /dev/null +++ b/bookstack/compose.yml @@ -0,0 +1,40 @@ +services: + # BookStack + bookstack: + container_name: ${BOOKSTACK_CONTAINER_NAME:-BookStack} + hostname: bookstack + image: linuxserver/bookstack:${BOOKSTACK_TAG:-latest} + restart: ${RESTART:-unless-stopped} + healthcheck: + test: curl -f http://localhost:80/ || exit 1 + environment: + PUID: ${UID:-1024} + PGID: ${GID:-101} + TZ: ${TZ:-Europe/Amsterdam} + APP_URL: ${BOOKSTACK_APP_URL:-https://bookstack.example.com} + DB_HOST: bookstack-mariadb + DB_PORT: ${BOOKSTACK_MARIADB_TCP_PORT:-3306} + DB_USER: ${BOOKSTACK_MARIADB_USER:-bookstack} + DB_PASS: ${BOOKSTACK_MARIADB_PASSWORD:-bookstack} + DB_DATABASE: ${BOOKSTACK_MARIADB_DATABASE:-bookstack} + ports: + - ${BOOKSTACK_PORT:-80}:80 + volumes: + - /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-bookstack}/${BOOKSTACK_CONTAINER_NAME:-BookStack}/config:/config + + # MariaDB (for BookStack) + bookstack-mariadb: + container_name: ${BOOKSTACK_MARIADB_CONTAINER_NAME:-BookStack-MariaDB} + hostname: bookstack-mariadb + image: mariadb:${BOOKSTACK_MARIADB_TAG:-latest} + user: ${UID:-1024}:${GID:-101} + restart: ${RESTART:-unless-stopped} + environment: + TZ: ${TZ:-Europe/Amsterdam} + MARIADB_DATABASE: ${BOOKSTACK_MARIADB_DATABASE:-bookstack} + MARIADB_USER: ${BOOKSTACK_MARIADB_USER:-bookstack} + MARIADB_PASSWORD: ${BOOKSTACK_MARIADB_PASSWORD:-bookstack} + MARIADB_ROOT_PASSWORD: ${BOOKSTACK_MARIADB_ROOT_PASSWORD:-bookstack} + MARIADB_TCP_PORT: ${BOOKSTACK_MARIADB_TCP_PORT:-3306} + volumes: + - /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-bookstack}/${BOOKSTACK_MARIADB_CONTAINER_NAME:-BookStack-MariaDB}/var/lib/mysql:/var/lib/mysql diff --git a/bookstack/readme.md b/bookstack/readme.md new file mode 100644 index 0000000..dc578ec --- /dev/null +++ b/bookstack/readme.md @@ -0,0 +1,58 @@ +# BookStack + +BookStack is a simple, self-hosted, easy-to-use platform for organising and storing information. + +## Installation using Portainer + +### Tested with + +* Synology DS1019+ running DSM 7.2.1-69057 Update 3; +* Container Manager from Synology Package Center version 20.10.23-1437; +* Portainer.io Community Edition version 2.19.5; +* BookStack 24.02.3. + +### Create the following folders + +* docker/bookstack/BookStack/config +* docker/bookstack/BookStack-MariaDB/var/lib/mysql + +### Installation steps + +* Open Portainer with the correct environment. +* Under Stacks click the button + Add stack. +* Give your stack a name (i.e.: bookstack). +* Paste the contents of compose.yml under Web editor. +* Paste the contents of .env.sample under Environment variables. + * Click Advanced mode to be able to paste. +* Change the environment variables as you see fit. +* Click Deploy the stack and wait for Portainer to finish. + +## Environment variables + +The following variables could be set as an environment varaiables using the .env file. + +| Value | Default | Information | +|---|---|---| +| RESTART | unless-stopped | Choose a restart policy. | +| SYNOLOGY_VOLUME | volume1 | If you have only 1 volume Docker will be installed on volume 1. | +| STACK_NAME | bookstack | The name of your project/stack and also the base folder within your docker folder. | +| UID | 1024 | The user id you want to use. | +| GID | 101 | The group id you want to use. | +| TZ | Europe/Amsterdam | | +| BOOKSTACK_CONTAINER_NAME | BookStack | This is used for the name of the container and the main folder under de docker folder. | +| BOOKSTACK_TAG | latest | Choose a version tag. | +| BOOKSTACK_PORT | 80 | Default port. | +| BOOKSTACK_APP_URL | https://bookstack.example.com | | +| BOOKSTACK_MARIADB_CONTAINER_NAME | BookStack-MariaDB | This is used for the name of the container and the main folder under de docker folder. | +| BOOKSTACK_MARIADB_TAG | latest | Choose a version tag. | +| BOOKSTACK_MARIADB_TCP_PORT | 3306 | | +| BOOKSTACK_MARIADB_DATABASE | bookstack | | +| BOOKSTACK_MARIADB_USER | bookstack | | +| BOOKSTACK_MARIADB_PASSWORD | bookstack | | +| BOOKSTACK_MARIADB_ROOT_PASSWORD | bookstack | | + +## Links + +* [Website](https://www.bookstackapp.com/) +* [Docker Hub](https://hub.docker.com/r/linuxserver/bookstack/) +* [LinuxServer.io](https://docs.linuxserver.io/images/docker-bookstack/)