143 lines
3.5 KiB
Bash
Executable File
143 lines
3.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "=== YourPart Deployment mit vorhandener Konfiguration ==="
|
|
|
|
# Prüfen ob wir im richtigen Verzeichnis sind
|
|
if [ ! -f "package.json" ]; then
|
|
echo "Error: Bitte führen Sie dieses Skript aus dem YourPart3-Root-Verzeichnis aus"
|
|
exit 1
|
|
fi
|
|
|
|
# Frontend bauen
|
|
echo "Building frontend..."
|
|
cd frontend
|
|
npm ci
|
|
npm run build
|
|
cd ..
|
|
|
|
# Verzeichnisse erstellen
|
|
echo "Creating directories..."
|
|
sudo mkdir -p /opt/yourpart/{frontend,backend,images/{tmp,userimages,screenshots}}
|
|
|
|
# Frontend kopieren
|
|
echo "Deploying frontend..."
|
|
sudo cp -r frontend/dist /opt/yourpart/frontend/
|
|
sudo chown -R www-data:www-data /opt/yourpart/frontend
|
|
sudo chmod -R 755 /opt/yourpart/frontend
|
|
|
|
# Backend kopieren
|
|
echo "Deploying backend..."
|
|
sudo cp -r backend/* /opt/yourpart/backend/
|
|
sudo chown -R www-data:www-data /opt/yourpart/backend
|
|
sudo chmod -R 755 /opt/yourpart/backend
|
|
|
|
# .env-Datei erstellen
|
|
echo "Creating .env file..."
|
|
cat > /opt/yourpart/backend/.env << 'ENVEOF'
|
|
# Datenbank-Konfiguration (aus alter App)
|
|
DB_HOST=localhost
|
|
DB_USER=yourpart
|
|
DB_PASS=hitomisan
|
|
DB_NAME=yp2
|
|
DB_PORT=60000
|
|
|
|
# Anwendungskonfiguration
|
|
NODE_ENV=production
|
|
PORT=2020
|
|
STAGE=production
|
|
|
|
# Redis-Konfiguration
|
|
REDIS_HOST=localhost
|
|
REDIS_PORT=6379
|
|
REDIS_PASS=your_redis_password
|
|
|
|
# Session-Konfiguration (aus alter App)
|
|
SECRET_KEY=k7e0CCw75PcmEGa
|
|
SESSION_SECRET=k7e0CCw75PcmEGa
|
|
|
|
# E-Mail-Konfiguration (aus alter App)
|
|
SMTP_HOST=smtp.1blu.de
|
|
SMTP_PORT=465
|
|
SMTP_USER=e226079_0-tsschulz
|
|
SMTP_PASS=hitomisan
|
|
SMTP_SECURE=true
|
|
|
|
# E-Mail-Einstellungen (aus alter App)
|
|
SENDER_NAME=YourPart
|
|
SENDER_EMAIL=kontakt@your-part.de
|
|
|
|
# AMQP-Konfiguration (aus alter App)
|
|
AMQP_HOST=tsschulz.de
|
|
AMQP_PORT=5672
|
|
AMQP_EXCHANGE=yourpart
|
|
AMQP_USERNAME=yourpart
|
|
AMQP_PASSWORD=yourpart
|
|
|
|
# API-Keys (aus alter App)
|
|
WEATHER_API_KEY=d0ddfcbc915f50263274211648a5dab0
|
|
NEWS_API_KEY=pub_212733602779de7708a7374d67e363bd06af4
|
|
|
|
# Pfad-Konfiguration (aus alter App)
|
|
ROOT_PATH=/opt/yourpart
|
|
IMAGES_PATH=/images
|
|
TMP_IMAGES_PATH=/images/tmp
|
|
USER_IMAGES_PATH=/images/userimages
|
|
SCREENSHOT_IMAGES_PATH=/images/screenshots
|
|
|
|
# URL-Konfiguration
|
|
BASE_URL=https://www.your-part.de
|
|
IMAGES_URL=https://www.your-part.de/images/
|
|
ACTIVATION_URL=https://www.your-part.de/activate?code=
|
|
PASSWORD_RESET_URL=https://www.your-part.de/setnewpassword?username=
|
|
|
|
# Spiel-Konfiguration (aus alter App)
|
|
START_BUDGET=10
|
|
TEST_MODE=false
|
|
PAY_PER_DAY=100
|
|
|
|
# Debug-Einstellungen
|
|
DEBUG_SQL=false
|
|
DEBUG_MESSAGES=false
|
|
DEBUG_RECREATE_DB=false
|
|
ENVEOF
|
|
|
|
sudo chown www-data:www-data /opt/yourpart/backend/.env
|
|
sudo chmod 600 /opt/yourpart/backend/.env
|
|
|
|
# Service installieren
|
|
echo "Installing service..."
|
|
sudo cp yourpart.service /etc/systemd/system/
|
|
sudo systemctl daemon-reload
|
|
sudo systemctl enable yourpart.service
|
|
|
|
# Apache-Konfiguration
|
|
echo "Configuring Apache..."
|
|
sudo cp yourpart-http.conf /etc/apache2/sites-available/
|
|
sudo cp yourpart-https.conf /etc/apache2/sites-available/
|
|
|
|
# Alte Konfiguration deaktivieren
|
|
sudo a2dissite yourpart 2>/dev/null || true
|
|
|
|
# Neue Konfigurationen aktivieren
|
|
sudo a2ensite yourpart-http
|
|
sudo a2ensite yourpart-https
|
|
|
|
# Apache-Module aktivieren
|
|
sudo a2enmod proxy proxy_http proxy_wstunnel rewrite ssl
|
|
sudo systemctl reload apache2
|
|
|
|
# Service starten
|
|
echo "Starting service..."
|
|
sudo systemctl start yourpart.service
|
|
|
|
echo ""
|
|
echo "=== Deployment abgeschlossen! ==="
|
|
echo "Frontend: /opt/yourpart/frontend/dist/"
|
|
echo "Backend: /opt/yourpart/backend/"
|
|
echo "Service: yourpart.service"
|
|
echo ""
|
|
echo "Status prüfen:"
|
|
echo " sudo systemctl status yourpart.service"
|
|
echo " sudo systemctl status apache2"
|
|
echo " sudo journalctl -u yourpart.service -f"
|