auto-deploy-demo/deploy/start.sh

40 lines
979 B
Bash
Raw Permalink Normal View History

#!/bin/sh
# Startup script - Start Nginx and Node.js
# Set working directory
cd /app
# Set environment variables
export USE_NGINX=true
export NGINX_CONFIG_DIR=/app/nginx/sites-enabled
export NGINX_RELOAD_CMD="nginx -s reload"
export NGINX_TEST_CMD="nginx -t"
export PROJECT_BIND_ADDRESS=127.0.0.1
# Initialize Nginx config
node -e "
const fs = require('fs');
const path = require('path');
process.chdir('/app');
const config = require('./server/config');
const nginxManager = require('./server/services/nginxManager');
// Generate initial config
const mainConfig = nginxManager.generateMainConfig();
const configDir = '/app/nginx/sites-enabled';
if (!fs.existsSync(configDir)) {
fs.mkdirSync(configDir, { recursive: true });
}
fs.writeFileSync(path.join(configDir, 'auto-deploy.conf'), mainConfig);
console.log('Nginx config initialized');
"
# Start Nginx
echo "Starting Nginx..."
nginx
# Start Node.js server
echo "Starting Node.js server..."
exec node server/index.js