deploy: POST /api/wallets + full swagger
This commit is contained in:
54
start.sh
54
start.sh
@@ -1,54 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
echo "=========================================="
|
||||
echo " CryptoWallet API - Production Deploy"
|
||||
echo "=========================================="
|
||||
|
||||
# 1. Docker check
|
||||
command -v docker >/dev/null || { echo "[ERROR] Docker not installed"; exit 1; }
|
||||
docker compose version >/dev/null 2>&1 || { echo "[ERROR] docker compose plugin missing"; exit 1; }
|
||||
|
||||
# 2. .env check
|
||||
if [ ! -f .env ]; then
|
||||
cp .env.example .env
|
||||
echo "[INFO] Created .env from .env.example"
|
||||
echo "[INFO] Fill in VAULT_ROLE_ID, VAULT_SECRET_ID and re-run."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 3. Build & start
|
||||
echo "[INFO] Building image..."
|
||||
docker compose build --pull api
|
||||
|
||||
echo "[INFO] Starting services..."
|
||||
docker compose up -d
|
||||
|
||||
# 4. Wait for health
|
||||
echo "[INFO] Waiting for API to be healthy..."
|
||||
for i in $(seq 1 60); do
|
||||
if curl -sf http://localhost:3001/api/health >/dev/null 2>&1; then
|
||||
echo "[OK] API healthy"
|
||||
break
|
||||
fi
|
||||
if [ "$i" = "60" ]; then
|
||||
echo "[ERROR] API did not become healthy in 120s"
|
||||
docker compose logs --tail=50 api
|
||||
exit 1
|
||||
fi
|
||||
sleep 2
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "=========================================="
|
||||
echo " Deploy complete"
|
||||
echo ""
|
||||
echo " API: http://localhost:3001"
|
||||
echo " Health: http://localhost:3001/api/health"
|
||||
echo " Docs: http://localhost:3001/api/docs"
|
||||
echo ""
|
||||
echo " Logs: docker compose logs -f api"
|
||||
echo " Stop: docker compose down"
|
||||
echo "=========================================="
|
||||
Reference in New Issue
Block a user