40 lines
979 B
Bash
40 lines
979 B
Bash
#!/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
|