Skip to content

batihandev/fastify-prisma-docker

Repository files navigation

Prisma Fastify Docker TypeScript Starter

A minimal backend starter using Fastify, Prisma, TypeScript, and Docker.

Stack

  • Fastify
  • Prisma (PostgreSQL)
  • TypeScript
  • Docker & Docker Compose
  • pnpm

Requirements

  • Node.js (LTS recommended)

  • pnpm

    npm install -g pnpm
  • Docker

Project Structure

prisma/
  migrations/
  schema/
    user.prisma
    post.prisma

src/
  routes/
  services/
  schemas/
  prisma/client.ts
  app.ts
  server.ts

docker-compose.yml
Dockerfile
nginx.conf
.env.example.*

Environment Files

Choose one depending on how you run the app.

Local backend + Docker Postgres

cp .env.example.local .env

Full Docker stack

cp .env.example.docker .env

Running the App

Local development

docker compose up -d postgres

pnpm install
pnpm prisma:generate
pnpm prisma:migrate:dev
pnpm dev

Full Docker

cp .env.example.docker .env
docker compose up --build

API Testing

Get users

curl http://127.0.0.1:4000/users

Create user

curl -X POST http://127.0.0.1:4000/users \
  -H "Content-Type: application/json" \
  -d '{"name":"TestUser","email":"test@example.com"}'

Via Nginx:

curl http://127.0.0.1/api/backend/users

About

A minimal backend template built with Fastify, Prisma, and TypeScript, using Docker for local development and deployment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors