# Node.js

Source : https://webgune.cloud/de-de/docs/web-nodejs · Mis à jour le 2026-10-27

# Node.js

Jedes Repository mit einer `package.json`, die ein `start`-Skript enthält (und keinem spezifischeren Framework wie Next.js entspricht), wird als generischer Node.js-Dienst behandelt.

## Die Regel, die 90 % der Probleme vermeidet

```javascript
// ✅ Korrekt — von Traefik aus erreichbar
app.listen(process.env.PORT || 3000, "0.0.0.0");

// ❌ Falsch — der Dienst antwortet mit „Running“, bleibt aber unerreichbar
app.listen(3000, "localhost");
```

`localhost` bezeichnet innerhalb eines Pods nur den Pod selbst: Traefik, der sich außerhalb befindet, kann ihn nicht erreichen.

## Express

```javascript
import express from "express";

const app = express();
app.use(express.json());

app.get("/health", (_req, res) => res.json({ ok: true }));

const port = process.env.PORT || 3000;
app.listen(port, "0.0.0.0", () => console.log(`listening on ${port}`));
```

## Fastify

```javascript
import Fastify from "fastify";

const app = Fastify();
app.get("/health", async () => ({ ok: true }));

await app.listen({ port: process.env.PORT || 3000, host: "0.0.0.0" });
```

## Prozessverwaltung

Der Auto-Builder startet Ihr `start`-Skript direkt. Wenn Ihre Anwendung einen Prozess-Supervisor benötigt (automatischer Neustart, Cluster-Modus), verwenden Sie einen [benutzerdefinierten Startbefehl](/docs/commande-demarrage) mit PM2 oder Äquivalent.
