Build HTTP APIs with routing, middleware, validation, controllers, and error handling.
Lessons
Package your API into a reproducible container image.
Dockerizing Express is easiest to learn by reading the example, changing it, and observing the result.
# Dockerfile
FROM node:22-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --omit=dev
COPY . .
ENV NODE_ENV=production
EXPOSE 3000
CMD ["node", "src/server.js"]Practice the Dockerizing Express example in a small scratch file, then explain what changed and why.