From 351bbada86c04c10ceb15da388a94781dade609a Mon Sep 17 00:00:00 2001 From: Nick Yeoman Date: Fri, 26 Jul 2024 11:33:24 -0700 Subject: [PATCH] Bookstack cleaned --- _builder/dc-env.sh | 4 ++-- _builder/parse.bash | 5 ++--- bookstack/docker-compose.yml | 26 +++++++++++++------------- bookstack/sample.env | 19 +++++++++++++------ builder.bash | 5 +++++ 5 files changed, 35 insertions(+), 24 deletions(-) diff --git a/_builder/dc-env.sh b/_builder/dc-env.sh index 22a3768..5c211da 100644 --- a/_builder/dc-env.sh +++ b/_builder/dc-env.sh @@ -8,8 +8,8 @@ process_env_vars() { # Loop through each environment variable while IFS= read -r env_var; do # Split into name and value parts based on '=' - var_name="${env_var%%:*}" # Variable name (split by colon for YAML) - var_value="${env_var#*: }" # Variable value (remove leading space) + var_name="${env_var%%=*}" # Variable name + var_value="${env_var#*=}" # Variable value # Handle variables without existing braces (not previously processed) if [[ "$var_value" != *'${'* ]]; then diff --git a/_builder/parse.bash b/_builder/parse.bash index e2d3e63..6b3654c 100644 --- a/_builder/parse.bash +++ b/_builder/parse.bash @@ -15,12 +15,11 @@ get_env_vars() { local compose_content="$1" local env_vars="" - # Use yq to extract the environment variables in 'key: value' format - env_vars=$(echo "$compose_content" | yq eval '.services.*.environment | to_entries | .[] | "\(.key): \(.value)"' - 2>/dev/null) + # Use yq to extract environment variables in 'key=value' format without indices + env_vars=$(echo "$compose_content" | yq eval '.services.*.environment[]' - 2>/dev/null) echo "$env_vars" } - get_image() { local compose_content="$1" local images="" diff --git a/bookstack/docker-compose.yml b/bookstack/docker-compose.yml index 5f220ac..7b44526 100644 --- a/bookstack/docker-compose.yml +++ b/bookstack/docker-compose.yml @@ -1,20 +1,20 @@ version: '3.8' services: - bookstack: image: ${BOOKSTACK_IMAGE:-solidnerd/bookstack:latest} + restart: unless-stopped environment: - - DB_HOST=bookstack-db:3306 - - DB_DATABASE=dbuser - - DB_USERNAME=dbuser - - DB_PASSWORD=dbpass - - APP_URL=${APP_URL:-http://localhost:8248} - - REVISION_LIMIT=false - - APP_KEY=APP_KEY - - APP_TIMEZONE=America/Vancouver + - APP_KEY: ${BOOKSTACK_APP_KEY:-APP_KEY} + - APP_TIMEZONE: ${BOOKSTACK_APP_TIMEZONE:-America/Vancouver} + - APP_URL: ${BOOKSTACK_APP_URL:-http://localhost:8248} + - DB_DATABASE: ${BOOKSTACK_DB_DATABASE:-dbname} + - DB_HOST: ${BOOKSTACK_DB_HOST:-bookstack-mariadb:3306} + - DB_PASSWORD: ${BOOKSTACK_DB_PASSWORD:-dbpass} + - DB_USERNAME: ${BOOKSTACK_DB_USERNAME:-dbuser} + - REVISION_LIMIT: ${BOOKSTACK_REVISION_LIMIT:-false} volumes: - - "/etc/timezone:/etc/timezone:ro" - - ./data/uploads:/var/www/bookstack/public/uploads - - ./data/storage:/var/www/bookstack/storage/uploads - - ./config/php.ini:/usr/local/etc/php/php.ini + - ${VOL_CONFIG_PATH:-./config}/php.ini:/usr/local/etc/php/php.ini + - ${VOL_PATH:-./data}/storage:/var/www/bookstack/storage/uploads + - ${VOL_PATH:-./data}/uploads:/var/www/bookstack/public/uploads + - /etc/timezone:/etc/timezone:ro diff --git a/bookstack/sample.env b/bookstack/sample.env index f5e183c..8cb6a6f 100644 --- a/bookstack/sample.env +++ b/bookstack/sample.env @@ -1,7 +1,14 @@ -# Bookstack App -PRODDIR=/var/www/stashdomain-com/ #HELP: project_path -COOKBOOK=/home/user/git/docker-compose-cookbooks #HELP: cookbooks -VOL_PATH=/project-dir/project-name/data #HELP: volpath -# Bookstack Container +COOKBOOK=/git/docker-compose-cookbooks #HELP: cookbooks + +# bookstack +BOOKSTACK_APP_KEY=APP_KEY #HELP: gen32 +BOOKSTACK_APP_TIMEZONE=America/Vancouver +BOOKSTACK_APP_URL=http://localhost:8248 +BOOKSTACK_DB_DATABASE=dbname +BOOKSTACK_DB_HOST=bookstack-db:3306 +BOOKSTACK_DB_PASSWORD=dbpass #HELP: gen32 +BOOKSTACK_DB_USERNAME=dbuser BOOKSTACK_IMAGE=solidnerd/bookstack:latest -APP_KEY=012345679801234567980123645678921 #HELP: gen32 \ No newline at end of file +BOOKSTACK_REVISION_LIMIT=false +VOL_CONFIG_PATH=./config #HELP: configpath +VOL_PATH=./data #HELP: volpath diff --git a/builder.bash b/builder.bash index 0365429..83559bd 100644 --- a/builder.bash +++ b/builder.bash @@ -58,7 +58,12 @@ BLDR_DC_VOLS=$(process_volumes "$BLDR_DC_VOLS") # Clean up ENV ################################################ source ./_builder/dc-env.sh +# echo "*** Pre process **" +# echo "$BLDR_DC_ENV" BLDR_DC_ENV=$(process_env_vars "$BLDR_DC_ENV" "$BLDR_APP") +# echo "*** Post **" +# echo "$BLDR_DC_ENV" +# exit ################################################ # Compile New Docker Var BLDR_NEW_DCF