34 lines
1.3 KiB
Bash
34 lines
1.3 KiB
Bash
#!/usr/bin/env bash
|
||
# Запуск страницы самoregистрации пользователей
|
||
set -euo pipefail
|
||
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
cd "${SCRIPT_DIR}"
|
||
|
||
if [[ ! -f .env ]]; then
|
||
cp .env.example .env
|
||
if [[ -f "${SCRIPT_DIR}/../docker/.env" ]]; then
|
||
# shellcheck disable=SC1091
|
||
source "${SCRIPT_DIR}/../docker/.env"
|
||
PORT="${NEXTCLOUD_PORT:-8080}"
|
||
HTTPS="${NEXTCLOUD_HTTPS_PORT:-8443}"
|
||
if [[ -f "${SCRIPT_DIR}/../docker/.ssl-enabled" ]]; then
|
||
sed -i "s|^NEXTCLOUD_URL=.*|NEXTCLOUD_URL=https://127.0.0.1:${HTTPS}|" .env
|
||
else
|
||
sed -i "s|^NEXTCLOUD_URL=.*|NEXTCLOUD_URL=http://127.0.0.1:${PORT}|" .env
|
||
fi
|
||
if grep -q '^NEXTCLOUD_ADMIN_PASSWORD=' "${SCRIPT_DIR}/../docker/.env"; then
|
||
ADMIN_PASS="$(grep '^NEXTCLOUD_ADMIN_PASSWORD=' "${SCRIPT_DIR}/../docker/.env" | cut -d= -f2-)"
|
||
sed -i "s|^REGISTRATION_ADMIN_PASSWORD=.*|REGISTRATION_ADMIN_PASSWORD=${ADMIN_PASS}|" .env
|
||
fi
|
||
fi
|
||
echo "[WARN] Создан .env — проверьте REGISTRATION_ADMIN_PASSWORD"
|
||
fi
|
||
|
||
command -v node >/dev/null || { echo "[ERROR] Нужен Node.js >= 18"; exit 1; }
|
||
|
||
# shellcheck disable=SC1091
|
||
source .env
|
||
echo "[INFO] Регистрация: http://0.0.0.0:${REGISTER_UI_PORT:-3001}"
|
||
exec node server.js
|