|
@@ -4,11 +4,11 @@ set -eu
|
|
|
|
|
|
mongo_cli="mongo ${MONGODB_HOST}:${MONGODB_PORT}/${MONGODB_DATABASE} -u ${MONGODB_USERNAME} -p ${MONGODB_PASSWORD}"
|
|
|
|
|
|
-echo "Creating directories"
|
|
|
-mkdir -p /app/data/public/uploads /run/nodebb/logs /run/nodebb/public /run/nodebb/node_modules /run/nodebb/npm
|
|
|
+echo "=> Creating directories"
|
|
|
+mkdir -p /app/data/public/uploads /run/nodebb/logs /run/nodebb/public /run/nodebb/node_modules /run/nodebb/npm /run/nodebb/build
|
|
|
|
|
|
if [[ -z "$(ls -A /run/nodebb/public)" ]]; then
|
|
|
- echo "Copying public files"
|
|
|
+ echo "=> Copying public files"
|
|
|
|
|
|
cp -rf /app/code/public_template/* /run/nodebb/public
|
|
|
|
|
@@ -22,7 +22,7 @@ if [[ -z "$(ls -A /run/nodebb/public)" ]]; then
|
|
|
fi
|
|
|
|
|
|
# Some plugins write stuff into node_modules. Not nice :/
|
|
|
-echo "Moving node_modules"
|
|
|
+echo "=> Moving node_modules"
|
|
|
cp -rf /app/code/node_modules_copy/* /run/nodebb/node_modules
|
|
|
|
|
|
chown -R cloudron:cloudron /app/data /run/nodebb
|
|
@@ -31,7 +31,7 @@ export NODE_ENV=production
|
|
|
export NODE_PATH=/app/code/node_modules
|
|
|
|
|
|
if [[ ! -f /app/data/.setup_done ]]; then
|
|
|
- echo "Running initial setup"
|
|
|
+ echo "=> Running initial setup"
|
|
|
setup="{
|
|
|
\"url\": \"${APP_ORIGIN}\",
|
|
|
\"admin:username\": \"admin\",
|
|
@@ -69,7 +69,7 @@ sed -e "s,##APP_ORIGIN,${APP_ORIGIN}," \
|
|
|
-e "s/##SECRET/${secret}/" \
|
|
|
/app/code/config.json.template > /run/nodebb/config.json
|
|
|
|
|
|
-echo "Checking plugins to be installed"
|
|
|
+echo "=> Checking plugins to be installed"
|
|
|
for plugin in $(./nodebb plugins | grep 'nodebb-' | cut -f3 -d' '); do
|
|
|
if [[ ! -d "/app/code/node_modules/${plugin}" ]]; then
|
|
|
echo "Could not find plugin ${plugin}. Installing it"
|
|
@@ -77,15 +77,15 @@ for plugin in $(./nodebb plugins | grep 'nodebb-' | cut -f3 -d' '); do
|
|
|
fi
|
|
|
done
|
|
|
|
|
|
-echo "Enabling the local mailer"
|
|
|
+echo "=> Enabling the local mailer"
|
|
|
${mongo_cli} --eval "db.objects.update({ _key: \"settings:emailer-local\" }, { \$set: { \"emailer:local:host\": \"${MAIL_SMTP_SERVER}\", \"emailer:local:port\": \"${MAIL_SMTP_PORT}\", \"emailer:local:username\": \"${MAIL_SMTP_USERNAME}\", \"emailer:local:password\": \"${MAIL_SMTP_PASSWORD}\", \"emailer:local:secure\": \"off\" } }, { upsert: true })"
|
|
|
|
|
|
${mongo_cli} --eval "db.objects.update({ _key: \"config\" }, { \$set: { \"email:from\": \"${MAIL_FROM}\", \"email:from_name\": \"NodeBB\" } }, { upsert: true })"
|
|
|
|
|
|
${mongo_cli} --eval "db.objects.update({ _key: \"plugins:active\" }, { \$set: { \"value\": \"nodebb-plugin-emailer-local\", \"score\": \"0\" } }, { upsert: true })"
|
|
|
|
|
|
-echo "Updating nodebb"
|
|
|
+echo "=> Updating nodebb"
|
|
|
node /app/code/app --upgrade
|
|
|
|
|
|
-echo "Starting nodebb"
|
|
|
+echo "=> Starting nodebb"
|
|
|
/usr/local/bin/gosu cloudron:cloudron node /app/code/loader.js --no-daemon --no-silent
|