You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
1.2 KiB

#!/bin/bash
set -e
echo "🔧 System wird aktualisiert..."
apt update && apt upgrade -y
echo "📦 Node.js & nginx installieren..."
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
apt install -y nodejs nginx git
echo "📁 Verzeichnisstruktur anlegen..."
mkdir -p /opt/myday
cd /opt/myday
echo "📥 Repo klonen..."
git clone https://git.samuelzielke.de/samuelzielke/myday.git .
cd frontend
echo "📄 Umgebungsvariablen definieren..."
cat <<EOF > .env.production
REACT_APP_API_URL=/api
EOF
echo "📦 Abhängigkeiten installieren und Build starten..."
npm install
npm run build
echo "🗂️ Build nach /var/www/myday kopieren..."
mkdir -p /var/www/myday
cp -r build/* /var/www/myday/
echo "⚙️ Nginx konfigurieren..."
cat <<EOF > /etc/nginx/sites-available/myday
server {
listen 80;
server_name myday.samuelzielke.de;
root /var/www/myday;
index index.html;
location / {
try_files \$uri /index.html;
}
}
EOF
ln -sf /etc/nginx/sites-available/myday /etc/nginx/sites-enabled/myday
rm -f /etc/nginx/sites-enabled/default
echo "🔁 Nginx neu starten..."
systemctl restart nginx
echo "✅ Setup abgeschlossen! Bitte stelle sicher, dass dein Backend auf Port 3001 läuft."

Powered by TurnKey Linux.