Installieren: Unterschied zwischen den Versionen

Aus Dokument
Zur Navigation springen Zur Suche springen
imported>Import
Version 398
imported>Import
Version 399
 
(kein Unterschied)

Aktuelle Version vom 5. April 2026, 18:18 Uhr

Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).


Diese Anleitung erklärt dir, wie du dein Wiki-System mit maximaler Performance (via Unix Domain Sockets) auf einen Ubuntu-Server installierst.



Teil 1: Das Backup (Deine Daten sichern)

  1. Öffne ein Terminal in deinem Projektordner auf deinem Computer.

  2. Gib diesen Befehl ein:

    dotnet run --project backup -- export mein_umzug.xml --full
    
  3. Sichere die Datei mein_umzug.xml.



Teil 2: Vorbereitung auf dem Server

  1. Server aktualisieren:
   sudo apt update && sudo apt upgrade -y
sudo apt install software-properties-common
sudo add-apt-repository ppa:dotnet/backports
sudo apt-get update
sudo apt-get install -y aspnetcore-runtime-10.0
sudo apt-get install -y aspnetcore-runtime-9.0
sudo apt-get install -y aspnetcore-runtime-8.0
  1. .NET 10 installieren:

    sudo apt install -y dotnet-sdk-10.0
    
  2. PostgreSQL installieren & einrichten:

    sudo apt install -y postgresql postgresql-contrib
    sudo -u postgres psql
    # In psql:
    CREATE DATABASE meincms;
    CREATE USER cmsuser WITH PASSWORD 'DeinSicheresPasswort';
    GRANT ALL PRIVILEGES ON DATABASE meincms TO cmsuser;
    \q
    



Teil 3: Installation & Unix Socket Setup

1. Code hochladen

Kopiere dein Projekt auf den Server (z.B. nach /var/www/meincms).

2. Konfiguration anpassen

Bearbeite mvc/appsettings.json (Passwort & Socket-Pfad):

{
  "ConnectionStrings": {
    "DefaultConnection": "Host=localhost;Database=meincms;Username=cmsuser;Password=DeinSicheresPasswort"
  },
  "Kestrel": {
    "UnixSocket": "/run/meincms.sock"
  }
}

3. Der System-Dienst (Motor)

Wir erstellen den Dienst so, dass er die Socket-Datei nutzen kann.

sudo nano /etc/systemd/system/meincms.service

Inhalt (Pfade anpassen!):

[Unit]
Description=MeinCMS Wiki System (Unix Socket)
After=network.target postgresql.service

[Service]
WorkingDirectory=/var/www/meincms/mvc
# Wichtig: Wir starten die DLL direkt für bessere Stabilität
ExecStart=/usr/bin/dotnet run --project /var/www/meincms/mvc/mvc.csproj --configuration Release
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=meincms
User=www-data
Group=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production
# Verzeichnis für die Socket-Datei vorbereiten
RuntimeDirectory=meincms

[Install]
WantedBy=multi-user.target

4. Nginx als Schutzschild (Konfiguration für Sockets)

sudo apt install -y nginx
sudo nano /etc/nginx/sites-available/default

Ersetze den Inhalt durch (Domain anpassen!):

server {
    listen 80;
    server_name deine-stadt.de;

    location / {
        # Hier verbinden wir Nginx mit dem Unix Socket
        proxy_pass         http://unix:/run/meincms.sock;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection keep-alive;
        proxy_set_header   Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto $scheme;
    }
}

Teil 4: Start & Import

  1. Dienste aktivieren:

    sudo systemctl daemon-reload
    sudo systemctl enable meincms
    sudo systemctl start meincms
    sudo systemctl restart nginx
    
  2. Daten importieren:

    cd /var/www/meincms
    dotnet run --project backup -- import mein_umzug.xml
    

FERTIG! Dein System läuft jetzt über den hochperformanten Unix Socket. Das ist die professionellste Art, ASP.NET Core unter Linux zu betreiben.


Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).