You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.1 KiB
33 lines
1.1 KiB
9 months ago
|
#!/usr/bin/env bash
|
||
|
# Create hidden service for the node container and ensure the web container
|
||
|
# gets the hidden service environment variable on first install.
|
||
|
|
||
|
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-node/hostname"
|
||
|
|
||
|
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
|
||
|
exit
|
||
|
fi
|
||
|
|
||
|
# Start web container first to update secret
|
||
|
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach web
|
||
|
|
||
|
# Start node container so that a hidden service can be created
|
||
|
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach node
|
||
|
|
||
|
echo "App: ${APP_ID} - Generating Tor Hidden Service for node container..."
|
||
|
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
|
||
|
|
||
|
for attempt in $(seq 1 100); do
|
||
|
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
|
||
|
echo "App: ${APP_ID} - Hidden service file created successfully!"
|
||
|
# restart web container to source the new hidden service env var
|
||
|
echo "App: ${APP_ID} - Restarting web container..."
|
||
|
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" restart web
|
||
|
break
|
||
|
fi
|
||
|
sleep 0.1
|
||
|
done
|
||
|
|
||
|
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
|
||
|
echo "App: ${APP_ID} - Hidden service file wasn't created"
|
||
|
fi
|