Installieren
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)
Öffne ein Terminal in deinem Projektordner auf deinem Computer.
Gib diesen Befehl ein:
dotnet run --project backup -- export mein_umzug.xml --full
Sichere die Datei
mein_umzug.xml.
Teil 2: Vorbereitung auf dem Server
- Server aktualisieren: ```bash sudo apt update && sudo apt upgrade -y sudo apt install software-properties-common
Fügt das .NET Backports-Repository hinzu, um verschiedene .NET-Versionen zu erhalten
sudo add-apt-repository ppa:dotnet/backports
Aktualisiert die Paketquellen
sudo apt-get update
Installiert mehrere Versionen der ASP.NET Core Runtime für parallele Anwendungskompatibilität
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
2. **.NET 10 installieren:**bash
sudo apt install -y dotnet-sdk-10.0
3. **PostgreSQL installieren & einrichten:**bash
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;
```
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
Dienste aktivieren:
sudo systemctl daemon-reload sudo systemctl enable meincms sudo systemctl start meincms sudo systemctl restart nginx
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).