DocSpace-buildtools/build/install/docker/docker-entrypoint-node.sh
2022-06-07 10:37:38 +03:00

109 lines
4.8 KiB
Bash
Executable File

#!/bin/bash
PARAMETERS=${PARAMETERS:-""}
# read parameters
if [ -n "$1" ]; then
RUN_FILE="${1}";
shift
fi
if [ -n "$1" ]; then
NAME_SERVICE="${1}";
shift
fi
while [ "$1" != "" ]; do
PARAMETERS="$PARAMETERS ${1}";
echo $PARAMETERS
shift
done
echo "Executing -- ${NAME_SERVICE}"
PRODUCT=${PRODUCT:-"onlyoffice"}
ENV_EXTENSION=${ENV_EXTENSION:-"test"}
PROXY_HOST=${PROXY_HOST:-"proxy"}
SHEME=${SHEME:-"http"}
SERVICE_PORT=${SERVICE_PORT:-"5050"}
URLS=${URLS:-"${SHEME}://0.0.0.0:${SERVICE_PORT}"}
PATH_TO_CONF=${PATH_TO_CONF:-"/app/${PRODUCT}/config"}
LOG_DIR=${LOG_DIR:-"/var/log/${PRODUCT}"}
# MYSQL_HOST=${MYSQL_HOST:-"mysql-server"}
# MYSQL_DATABASE=${MYSQL_DATABASE:-${PRODUCT}}
# MYSQL_USER=${MYSQL_USER:-"${PRODUCT}_user"}
# MYSQL_PASSWORD=${MYSQL_PASSWORD:-"${PRODUCT}_pass"}
# APP_CORE_BASE_DOMAIN=${APP_CORE_BASE_DOMAIN:-"localhost"}
# APP_URL_PORTAL=${APP_URL_PORTAL:-"${SHEME}://${PROXY_HOST}:8092"}
# APP_CORE_MACHINEKEY=${APP_CORE_MACHINEKEY:-"your_core_machinekey"}
# DOCUMENT_SERVER_JWT_SECRET=${DOCUMENT_SERVER_JWT_SECRET:-"your_jwt_secret"}
# DOCUMENT_SERVER_JWT_HEADER=${DOCUMENT_SERVER_JWT_HEADER:-"AuthorizationJwt"}
# DOCUMENT_SERVER_URL_PUBLIC=${DOCUMENT_SERVER_URL_PUBLIC:-"/ds-vpath/"}
# DOCUMENT_SERVER_URL_INTERNAL=${DOCUMENT_SERVER_URL_INTERNAL:-"${SHEME}://${PRODUCT}-document-server/"}
# ELK_SHEME=${ELK_SHEME:-"http"}
# ELK_HOST=${ELK_HOST:-"${PRODUCT}-elasticsearch"}
# ELK_PORT=${ELK_PORT:-"9200"}
# ELK_THREADS=${ELK_THREADS:-"1"}
# DATABASE_MIGRATION=${DATABASE_MIGRATION:-"false"}
# KAFKA_HOST=${KAFKA_HOST:-"kafka"}":9092"
# APP_STORAGE_ROOT=${APP_STORAGE_ROOT:-"${BASE_DIR}/data/"}
# function modifyJsonConfigFile {
# if [ -f $1 ]
# then
# pathToJsonConfig=$1
# else
# echo "Can't find configure file $1"
# return $?
# fi
# for i in ${!arrayJsonConfig[@]}; do
# python appsettings-jsonpath.py "${pathToJsonConfig}" "${arrayJsonConfig[$i]}"
# done
# return 1
# }
# arrayJsonConfig=("ConnectionStrings.default.connectionString = Server=${MYSQL_HOST};\
# Port=3306;\
# Database=${MYSQL_DATABASE};\
# User ID=${MYSQL_USER};\
# Password=${MYSQL_PASSWORD};\
# Pooling=true;\
# Character Set=utf8;\
# AutoEnlist=false;\
# SSL Mode=none;\
# AllowPublicKeyRetrieval=True;\
# ConnectionReset=false")
# modifyJsonConfigFile ${PATH_TO_CONF}/appsettings.json
# sed -i "s!Server=.*;Pooling=!Server=${MYSQL_HOST};Port=3306;Database=${MYSQL_DATABASE};User ID=${MYSQL_USER};Password=${MYSQL_PASSWORD};Pooling=!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"base-domain\".*,!\"base-domain\": \"${APP_CORE_BASE_DOMAIN}\",!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"machinekey\".*,!\"machinekey\": \"${APP_CORE_MACHINEKEY}\",!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"public\".*,!\"public\": \"${DOCUMENT_SERVER_URL_PUBLIC}\",!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"internal\".*,!\"internal\": \"${DOCUMENT_SERVER_URL_INTERNAL}\",!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"portal\".*!\"portal\": \"${APP_URL_PORTAL}\",!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "0,/\"value\"/s!\"value\".*,!\"value\": \"${DOCUMENT_SERVER_JWT_SECRET}\",!" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"header\".*!\"header\": \"${DOCUMENT_SERVER_JWT_HEADER}\"!" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"core\".*{!\"migration\": {\n\"enabled\": \"${DATABASE_MIGRATION}\"\n},\n\"core\": {!g" ${PATH_TO_CONF}/appsettings.${ENV_EXTENSION}.json
# sed -i "s!\"Scheme\".*!\"Scheme\": \"${ELK_SHEME}\",!g" ${PATH_TO_CONF}/elastic.json
# sed -i "s!\"Host\".*!\"Host\": \"${ELK_HOST}\",!g" ${PATH_TO_CONF}/elastic.json
# sed -i "s!\"Port\".*!\"Port\": \"${ELK_PORT}\",!g" ${PATH_TO_CONF}/elastic.json
# sed -i "s!\"Threads\".*!\"Threads\": \"${ELK_THREADS}\"!g" ${PATH_TO_CONF}/elastic.json
# #sed -i "s!\"subfolder\".*!\"subfolder\": \"server\",!g" ${PATH_TO_CONF}/appsettings.services.json
# sed -i "s!\"BootstrapServers\".*!\"BootstrapServers\": \"${KAFKA_HOST}\"!g" ${PATH_TO_CONF}/kafka.${ENV_EXTENSION}.json
python /app/modify-json-config.py
node ${RUN_FILE} --app.port=${SERVICE_PORT} --app.appsettings=${PATH_TO_CONF} --app.environment=${ENV_EXTENSION}