#!/bin/bash set -eu echo "Creating directories" mkdir -p /app/data/public/uploads /run/nodebb/logs /run/nodebb/public/templates if [[ -z "$(ls -A /app/data/public/uploads)" ]]; then echo "First run" cp -rf /app/code/public/uploads_template /app/data/public/uploads fi chown -R cloudron:cloudron /app/data /run/nodebb export NODE_ENV=production if [[ ! -f /app/data/.setup_done ]]; then echo "Running initial setup" setup="{ \"url\": \"${APP_ORIGIN}\", \"admin:username\": \"admin\", \"admin:password\": \"password\", \"admin:password:confirm\": \"password\", \"admin:email\": \"admin@cloudron.io\", \"database\": \"mongo\", \"mongo:host\": \"${MONGODB_HOST}\", \"mongo:port\": \"${MONGODB_PORT}\", \"mongo:username\": \"${MONGODB_USERNAME}\", \"mongo:password\": \"${MONGODB_PASSWORD}\", \"mongo:database\": \"${MONGODB_DATABASE}\" }" # this will create a config.json node /app/code/app --setup "${setup}" touch /app/data/.setup_done fi # Re-create config.json sed -e "s,##APP_ORIGIN,${APP_ORIGIN}," \ -e "s/##MONGODB_HOST/${MONGODB_HOST}/" \ -e "s/##MONGODB_PORT/${MONGODB_PORT}/" \ -e "s/##MONGODB_USERNAME/${MONGODB_USERNAME}/" \ -e "s/##MONGODB_PASSWORD/${MONGODB_PASSWORD}/" \ -e "s/##MONGODB_DATABASE/${MONGODB_DATABASE}/" \ -e "s/##SECRET/$(uuid)/" \ /app/code/config.json.template > /run/nodebb/config.json echo "Updating nodebb" node /app/code/app --upgrade echo "Starting nodebb" /usr/local/bin/gosu cloudron:cloudron node /app/code/loader.js --no-daemon --no-silent --config /run/nodebb/config.json