# Node.js

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

# Node.js

Todo repositorio que contenga un `package.json` con un script `start` (y que no corresponda a ningún framework más específico como Next.js) se trata como un servicio Node.js genérico.

## La regla que evita el 90 % de los problemas

```javascript
// ✅ Correcto — accesible desde Traefik
app.listen(process.env.PORT || 3000, "0.0.0.0");

// ❌ Incorrecto — el servicio responde «Running» pero queda inalcanzable
app.listen(3000, "localhost");
```

`localhost` dentro de un pod solo designa al propio pod: Traefik, situado en el exterior, no puede alcanzarlo.

## 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" });
```

## Gestión de procesos

El builder automático ejecuta directamente tu script `start`. Si tu aplicación necesita un supervisor de procesos (reinicio automático, modo cluster), usa un [comando de inicio personalizado](/docs/commande-demarrage) con PM2 o equivalente.
