Spaces:
Paused
Paused
Update startup.sh for CodeBrain
Browse files- startup.sh +29 -0
startup.sh
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/sh
|
| 2 |
+
set -e
|
| 3 |
+
|
| 4 |
+
# Extract mind name from config for Tailscale hostname
|
| 5 |
+
MIND_NAME=$(cat /home/megamind/config.json | sed -n 's/.*"name"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' | head -1 | tr '[:upper:]' '[:lower:]' | tr ' ' '-')
|
| 6 |
+
TS_HOSTNAME="megamind-${MIND_NAME}"
|
| 7 |
+
|
| 8 |
+
# Start Tailscale if auth key is available
|
| 9 |
+
if [ -n "$TS_AUTHKEY" ]; then
|
| 10 |
+
echo "[startup] Starting Tailscale as ${TS_HOSTNAME}..."
|
| 11 |
+
tailscaled --tun=userspace-networking \
|
| 12 |
+
--statedir=/var/lib/tailscale \
|
| 13 |
+
--socket=/var/run/tailscale/tailscaled.sock &
|
| 14 |
+
sleep 2
|
| 15 |
+
|
| 16 |
+
tailscale up \
|
| 17 |
+
--authkey="$TS_AUTHKEY" \
|
| 18 |
+
--hostname="$TS_HOSTNAME" \
|
| 19 |
+
--accept-routes \
|
| 20 |
+
--socket=/var/run/tailscale/tailscaled.sock
|
| 21 |
+
|
| 22 |
+
echo "[startup] Tailscale connected as ${TS_HOSTNAME}"
|
| 23 |
+
tailscale status --socket=/var/run/tailscale/tailscaled.sock 2>/dev/null || true
|
| 24 |
+
else
|
| 25 |
+
echo "[startup] No TS_AUTHKEY set, running without Tailscale"
|
| 26 |
+
fi
|
| 27 |
+
|
| 28 |
+
echo "[startup] Starting MEGAMIND: ${MIND_NAME}"
|
| 29 |
+
exec megamind -config /home/megamind/config.json -port 7860
|