feat(deploy): prompt for service ports at install time; replace hardcoded 5000/5001/5002 with __PORT_*__ placeholders
This commit is contained in:
@@ -82,6 +82,15 @@ DOMAIN_PUBLIC="${DOMAIN_PUBLIC:-deepdrft.com}"
|
||||
read -rp " App subdomain [app.${DOMAIN_PUBLIC}]: " DOMAIN_APP
|
||||
DOMAIN_APP="${DOMAIN_APP:-app.${DOMAIN_PUBLIC}}"
|
||||
|
||||
read -rp " DeepDrftPublic port [5000]: " PORT_PUBLIC
|
||||
PORT_PUBLIC="${PORT_PUBLIC:-5000}"
|
||||
|
||||
read -rp " DeepDrftManager port [5001]: " PORT_MANAGER
|
||||
PORT_MANAGER="${PORT_MANAGER:-5001}"
|
||||
|
||||
read -rp " DeepDrftAPI port [5002]: " PORT_API
|
||||
PORT_API="${PORT_API:-5002}"
|
||||
|
||||
CERTBOT_EMAIL=""
|
||||
while [[ -z "${CERTBOT_EMAIL}" ]]; do
|
||||
read -rp " Email for certbot TLS cert (required): " CERTBOT_EMAIL
|
||||
@@ -103,6 +112,9 @@ printf " │ %-22s %-37s│\n" "DB_AUTH" "${DB_AUTH}"
|
||||
printf " │ %-22s %-37s│\n" "DOMAIN_PUBLIC" "${DOMAIN_PUBLIC}"
|
||||
printf " │ %-22s %-37s│\n" "DOMAIN_APP" "${DOMAIN_APP}"
|
||||
printf " │ %-22s %-37s│\n" "CERTBOT_EMAIL" "${CERTBOT_EMAIL}"
|
||||
printf " │ %-22s %-37s│\n" "PORT_PUBLIC" "${PORT_PUBLIC}"
|
||||
printf " │ %-22s %-37s│\n" "PORT_MANAGER" "${PORT_MANAGER}"
|
||||
printf " │ %-22s %-37s│\n" "PORT_API" "${PORT_API}"
|
||||
printf " │ %-22s %-37s│\n" "OPT_DIR" "${OPT_DIR}"
|
||||
echo " └──────────────────────────────────────────────────────────────┘"
|
||||
echo
|
||||
@@ -204,6 +216,10 @@ cp "${SCRIPT_DIR}/systemd/deepdrftpublic.service" "${APP_HOME}/.config/systemd/
|
||||
cp "${SCRIPT_DIR}/systemd/deepdrftmanager.service" "${APP_HOME}/.config/systemd/user/"
|
||||
cp "${SCRIPT_DIR}/systemd/deepdrftapi.service" "${APP_HOME}/.config/systemd/user/"
|
||||
|
||||
sed -i "s|__PORT_PUBLIC__|${PORT_PUBLIC}|g" "${APP_HOME}/.config/systemd/user/deepdrftpublic.service"
|
||||
sed -i "s|__PORT_MANAGER__|${PORT_MANAGER}|g" "${APP_HOME}/.config/systemd/user/deepdrftmanager.service"
|
||||
sed -i "s|__PORT_API__|${PORT_API}|g" "${APP_HOME}/.config/systemd/user/deepdrftapi.service"
|
||||
|
||||
chown -R "${APP_USER}:${APP_USER}" "${APP_HOME}/.config/systemd"
|
||||
|
||||
# daemon-reload and enable. XDG_RUNTIME_DIR must be set explicitly — PAM may not
|
||||
@@ -237,6 +253,7 @@ else
|
||||
DB_AUTH="${DB_AUTH}" \
|
||||
DOMAIN_PUBLIC="${DOMAIN_PUBLIC}" \
|
||||
DOMAIN_APP="${DOMAIN_APP}" \
|
||||
PORT_API="${PORT_API}" \
|
||||
bash "${SCRIPT_DIR}/setup-step10-creds.sh"
|
||||
fi
|
||||
|
||||
@@ -371,10 +388,12 @@ step 9 "nginx"
|
||||
# Templates use __DOMAIN_PUBLIC__ and __DOMAIN_APP__ so the files in the tarball
|
||||
# don't contain real hostnames — substitution happens at install time.
|
||||
sed -e "s|__DOMAIN_PUBLIC__|${DOMAIN_PUBLIC}|g" \
|
||||
-e "s|__PORT_PUBLIC__|${PORT_PUBLIC}|g" \
|
||||
"${SCRIPT_DIR}/nginx/deepdrft-public.conf" \
|
||||
> "/etc/nginx/sites-available/${DOMAIN_PUBLIC}.conf"
|
||||
|
||||
sed -e "s|__DOMAIN_APP__|${DOMAIN_APP}|g" \
|
||||
-e "s|__PORT_MANAGER__|${PORT_MANAGER}|g" \
|
||||
"${SCRIPT_DIR}/nginx/deepdrft-manager.conf" \
|
||||
> "/etc/nginx/sites-available/${DOMAIN_APP}.conf"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user