Einleitung: Warum ist ein VPS der ideale Ort für Ihr TypeScript-Projekt?
Sie haben eine tolle Anwendung in TypeScript geschrieben – sei es ein Express-Server, eine Next.js-Website oder eine NestJS-API. Lokal funktioniert alles einwandfrei, aber es ist an der Zeit, das Projekt der Welt zu zeigen. Viele Anfänger fürchten sich vor der Bereitstellungsphase und halten sie für komplex und verwirrend. In Wirklichkeit reicht es, diesen Prozess einmal zu verstehen – und Sie können jedes TypeScript-Projekt in 15-20 Minuten bereitstellen.
In dieser Anleitung behandeln wir den vollständigen Zyklus der Bereitstellung einer TypeScript-Anwendung auf einem VPS (Virtual Private Server) – von der Servervorbereitung bis zur Domain-Konfiguration und HTTPS. Der Artikel konzentriert sich auf das Node.js-Ökosystem, da TypeScript am häufigsten damit verwendet wird.
Was Sie lernen werden:
- Wie Sie einen VPS für die Arbeit vorbereiten (Ubuntu 22.04)
- Wie Sie Node.js, TypeScript und den Prozessmanager PM2 konfigurieren
- Wie Sie TypeScript im Produktionsmodus bauen (kompilieren)
- Wie Sie Nginx als Reverse Proxy konfigurieren
- Wie Sie kostenlos ein SSL-Zertifikat über Let's Encrypt einbinden
1. VPS-Vorbereitung und Installation der erforderlichen Umgebung
1.1 Ersteinrichtung des Servers
Angenommen, Sie haben einen VPS (z.B. bei DigitalOcean, Timeweb oder Reg.ru) mit Ubuntu 22.04 gemietet. Stellen Sie zunächst eine Verbindung zum Server über SSH her:
ssh root@ihre-server-ipErstellen Sie einen separaten Benutzer (sicherer als unter root zu arbeiten):
adduser deployerusermod -aG sudo deployersu - deployer1.2 Installation von Node.js und npm
Für die TypeScript-Anwendung benötigen wir Node.js Version 18 oder 20 (LTS). Verwenden Sie das offizielle NodeSource PPA:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -sudo apt-get install -y nodejsÜberprüfen Sie die Installation:
node -vnpm -v1.3 Globale Installation von TypeScript (optional)
Obwohl TypeScript normalerweise als lokale Abhängigkeit des Projekts enthalten ist, können Sie es für eine schnelle Überprüfung der Kompilierung global installieren:
sudo npm install -g typescript1.4 Klonen Ihres Projekts
Kopieren Sie das Repository von GitHub/GitLab auf den Server:
git clone https://github.com/ihr-benutzername/ihr-projekt.gitcd ihr-projektInstallieren Sie die Abhängigkeiten:
npm install2. TypeScript-Build und PM2-Konfiguration
2.1 Kompilierung von TypeScript in JavaScript
In Ihrer package.json sollte ein Build-Skript vorhanden sein. Normalerweise sieht es so aus:
{ "scripts": { "build": "tsc", "start": "node dist/index.js", "dev": "ts-node-dev src/index.ts" }}Starten Sie den Build:
npm run buildNach der Ausführung erscheint im Ordner dist der kompilierte JavaScript-Code. Wenn Sie Next.js verwenden, lautet der Build-Befehl npm run build (Next.js kompiliert TypeScript selbst).
2.2 Installation und Konfiguration von PM2
PM2 ist ein Prozessmanager, der Ihre Anwendung am Laufen hält, sie bei einem Absturz neu startet und Logs verwaltet. Installieren Sie ihn:
sudo npm install -g pm2Starten Sie die Anwendung über PM2 (geben Sie den Pfad zur kompilierten Datei an):
pm2 start dist/index.js --name "my-typescript-app"Wenn Sie Next.js verwenden, lautet der Befehl anders:
pm2 start npm --name "next-app" -- startKonfigurieren Sie den automatischen Start von PM2 beim Neustart des Servers:
pm2 startup systemdpm2 saveJetzt läuft Ihre Anwendung auf einem lokalen Port (z.B. 3000). Machen wir sie über eine Domain verfügbar.
3. Konfiguration von Nginx als Reverse Proxy
3.1 Installation von Nginx
Blogs
Buchempfehlungen
Lesen Sie auch
Sicherheit von JavaScript-Anwendungen: Top-10-Schwachstellen in der Praxis
TypeScript in realen Projekten: Fallstudien von Unternehmen, die Sie überraschen werden
C# und neuronale Netze: So binden Sie ChatGPT in Ihr Projekt ein
So entfernen Sie die untere Linie der UINavigationBar: 3 funktionierende Methoden
Sauberer JavaScript-Code: Ein Leitfaden für alle, die für Menschen schreiben