DevOps

Building a Portfolio: Netlify, Docker & Modern Deployment

Austin H.•September 10, 2026•12 min read
#netlify#docker#portfolio#deployment

Why This Stack?

Building a portfolio that showcases your work requires more than just a pretty website. You need:

  • Local development environment that mirrors production
  • Easy deployment without SSH or complex CI/CD
  • Fast iteration on design and content
  • Scalability as your portfolio grows

Netlify + Docker gives you all of this.

Architecture

  1. Docker for local dev and reproducible builds
  2. Netlify for hosting and deployments
  3. GitHub for version control and automation

Getting Started

Create a Dockerfile:

FROM node:22-slim
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "run", "dev"]

Local Development

docker build -t portfolio .
docker run -p 3000:3000 portfolio

Visit localhost:3000 to see your site.

Deploy to Netlify

  1. Push to GitHub
  2. Connect repo to Netlify
  3. Set build command: npm run build
  4. Set publish directory: out or dist
  5. Deploy

Netlify handles the rest |-- SSL, CDN, continuous deployment.

Example: nitsuah.io

The portfolio at https://nitsuah.io uses this exact setup. See the live example.

Key Takeaways

  • Docker ensures identical local and production environments
  • Netlify provides zero-config deployments with automatic HTTPS
  • GitHub integration enables preview deployments for every PR
  • Static export (output: export) works perfectly with Netlify
  • Docker multi-stage builds reduce final image size significantly

Code References

Further Reading

Screenshots

Portfolio site screenshot

Dockerfile Details

FROM node:22-slim
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "run", "dev", "--", "--hostname", "0.0.0.0"]

Thanks for reading!

Read More Articles