Faça deploy de uma API Express na Veloz.
1. Projeto Express
// index.js
const express = require("express");
const app = express();
const port = process.env.PORT || 3000;
app.use(express.json());
app.get("/", (req, res) => {
res.json({ message: "Olá da Veloz!" });
});
app.get("/health", (req, res) => {
res.json({ status: "ok" });
});
app.listen(port, "0.0.0.0", () => {
console.log(`Servidor rodando na porta ${port}`);
});Importante: Escute em
0.0.0.0(nãolocalhost) e useprocess.env.PORT.
2. Package.json
{
"name": "minha-api",
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
},
"dependencies": {
"express": "^4.18.0"
}
}3. Deploy
npm install -g onveloz
veloz login
veloz deployℹ Framework detectado: Express
ℹ Start: node index.js
ℹ Porta: 3000
? Confirmar e fazer deploy? (Y/n)
Com TypeScript
// src/index.ts
import express from "express";
const app = express();
const port = process.env.PORT || 3000;
app.use(express.json());
app.get("/", (req, res) => {
res.json({ message: "Olá da Veloz!" });
});
app.listen(port, "0.0.0.0");{
"scripts": {
"build": "tsc",
"start": "node dist/index.js"
}
}A Veloz detecta o script build e roda tsc automaticamente antes do deploy.
Com MongoDB
npm install mongoose
veloz env set MONGODB_URI=mongodb+srv://user:pass@cluster.mongodb.net/mydbconst mongoose = require("mongoose");
mongoose.connect(process.env.MONGODB_URI);
const UserSchema = new mongoose.Schema({
name: String,
email: String,
});
const User = mongoose.model("User", UserSchema);
app.get("/users", async (req, res) => {
const users = await User.find();
res.json(users);
});Com PostgreSQL (Prisma)
npm install prisma @prisma/client
veloz env set DATABASE_URL=postgres://user:pass@host:5432/mydbCORS
npm install corsconst cors = require("cors");
app.use(
cors({
origin: "https://meuapp.com",
credentials: true,
}),
);Health Check customizado
A Veloz faz health check em / por padrão. Para usar um endpoint diferente:
{
"services": {
".": {
"runtime": {
"healthCheck": {
"path": "/health",
"interval": 15
}
}
}
}
}Próximos passos
- Variáveis de Ambiente — Gerenciar secrets
- Domínios — Configurar domínio personalizado
- Troubleshooting — Resolver problemas comuns