mirror of
https://github.com/QYG2297248353/appstore-1panel.git
synced 2026-06-16 01:02:14 +08:00
51 lines
1.3 KiB
Bash
51 lines
1.3 KiB
Bash
#!/bin/sh
|
|
|
|
DEFAULT_PORT=16601
|
|
PORT_FILE="/goodluck/port"
|
|
WAIT_SECONDS=30
|
|
|
|
if [ -f "$PORT_FILE" ]; then
|
|
DETECT_PORT=$(cat "$PORT_FILE")
|
|
echo "Loaded last port: ${DETECT_PORT}"
|
|
else
|
|
DETECT_PORT=$DEFAULT_PORT
|
|
echo "No previous port found, using default port: ${DETECT_PORT}"
|
|
fi
|
|
|
|
/app/lucky -c /goodluck/lucky.conf -runInDocker &
|
|
MAIN_PID=$!
|
|
|
|
echo "Lucky main started with PID $MAIN_PID"
|
|
|
|
echo "Waiting for lucky to listen on port ${DETECT_PORT} (timeout ${WAIT_SECONDS}s)..."
|
|
SECONDS_WAITED=0
|
|
while ! nc -z 127.0.0.1 "${DETECT_PORT}" 2>/dev/null; do
|
|
sleep 1
|
|
SECONDS_WAITED=$((SECONDS_WAITED + 1))
|
|
|
|
if [ "$SECONDS_WAITED" -ge "$WAIT_SECONDS" ]; then
|
|
echo "Timeout waiting for port ${DETECT_PORT}, continue startup..."
|
|
break
|
|
fi
|
|
done
|
|
|
|
if nc -z 127.0.0.1 "${DETECT_PORT}" 2>/dev/null; then
|
|
echo "Port ${DETECT_PORT} is up."
|
|
else
|
|
echo "Port ${DETECT_PORT} still not open, continuing anyway."
|
|
fi
|
|
|
|
echo "Running: /app/lucky -rSetHttpAdminPort=${PANEL_APP_PORT_HTTP}"
|
|
/app/lucky -rSetHttpAdminPort="${PANEL_APP_PORT_HTTP}"
|
|
|
|
echo "Running: /app/lucky -rSetHttpsAdminPort=${PANEL_APP_PORT_HTTP}"
|
|
/app/lucky -rSetHttpsAdminPort="${PANEL_APP_PORT_HTTP}"
|
|
|
|
DIR=$(dirname "$PORT_FILE")
|
|
mkdir -p "$DIR"
|
|
|
|
echo "${PANEL_APP_PORT_HTTP}" > "$PORT_FILE"
|
|
echo "Saved admin port ${PANEL_APP_PORT_HTTP} to ${PORT_FILE}"
|
|
|
|
wait $MAIN_PID
|