Created new helper scripts: - quickstart-airgap.sh: One-command deployment for restricted environments - check-ready.sh: Validates that pre-built files exist before deployment Updated documentation: - Enhanced Dockerfile.frontend.prebuilt with clearer error messages - Updated DEPLOYMENT.md with step-by-step quick start guide - Updated README.md to distinguish standard vs air-gapped deployment Key improvements: - Clear warning that build must happen BEFORE docker-compose - Helper script that combines build + deployment steps - Readiness check to catch missing pre-built files early - Better instructions for test environments with restricted npm access This addresses the common error where Docker fails because frontend/dist/frontend/browser doesn't exist yet. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
63 lines
1.8 KiB
Bash
Executable File
63 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "========================================="
|
|
echo "Warehouse13 - Readiness Check"
|
|
echo "========================================="
|
|
echo ""
|
|
|
|
errors=0
|
|
|
|
# Check if pre-built files exist
|
|
if [ -d "frontend/dist/frontend/browser" ]; then
|
|
echo "✓ Pre-built Angular files found"
|
|
echo " Location: frontend/dist/frontend/browser"
|
|
file_count=$(ls -1 frontend/dist/frontend/browser | wc -l)
|
|
echo " Files: $file_count"
|
|
else
|
|
echo "✗ ERROR: Pre-built Angular files NOT found!"
|
|
echo " Expected: frontend/dist/frontend/browser"
|
|
echo ""
|
|
echo " You need to build the Angular app first:"
|
|
echo " Run: ./build-for-airgap.sh"
|
|
echo " OR: cd frontend && npm install && npm run build:prod"
|
|
echo ""
|
|
errors=$((errors + 1))
|
|
fi
|
|
|
|
echo ""
|
|
|
|
# Check if docker-compose.yml is configured for pre-built
|
|
if grep -q "Dockerfile.frontend.prebuilt" docker-compose.yml; then
|
|
echo "✓ docker-compose.yml configured for pre-built deployment"
|
|
else
|
|
echo "⚠ WARNING: docker-compose.yml may not be configured for pre-built deployment"
|
|
echo " Current frontend dockerfile:"
|
|
grep "dockerfile:" docker-compose.yml | grep -A 1 "frontend:" | tail -1
|
|
echo ""
|
|
echo " For air-gapped deployment, it should be: Dockerfile.frontend.prebuilt"
|
|
fi
|
|
|
|
echo ""
|
|
|
|
# Check if Docker is running
|
|
if docker info &> /dev/null; then
|
|
echo "✓ Docker is running"
|
|
else
|
|
echo "✗ ERROR: Docker is not running or not accessible"
|
|
errors=$((errors + 1))
|
|
fi
|
|
|
|
echo ""
|
|
echo "========================================="
|
|
|
|
if [ $errors -eq 0 ]; then
|
|
echo "✓ Ready to deploy!"
|
|
echo ""
|
|
echo "Run: docker-compose up -d --build"
|
|
echo "Or: ./quickstart-airgap.sh"
|
|
exit 0
|
|
else
|
|
echo "✗ NOT ready - please fix the errors above"
|
|
exit 1
|
|
fi
|