helm-charts

Helm Charts

Production-grade Helm charts for Kubernetes deployments following cloud-native best practices.

License Artifact Hub

📦 Available Charts

Chart Description Version Docs
LaravelLaravel Laravel application deployment with web/worker deployments, queue management, cron jobs, and auto-scaling Version README
Next.jsNext.js High-performance Next.js application deployment with SSR/SSG support, image optimization, and CDN integration Version README

🚀 Quick Start

Prerequisites

Installing Charts

# Install from GitHub Container Registry
helm install my-app oci://ghcr.io/5ergiu/helm-charts/my-chart \
  --version 0.1.0 \
  --namespace production \
  --create-namespace \
  --values values.yaml

From GitHub Release

# Download chart from releases
wget https://github.com/5ergiu/helm-charts/releases/download/my-chart-0.1.0/my-chart-0.1.0.tgz

# Install from local archive
helm install my-app my-chart-0.1.0.tgz \
  --namespace production \
  --create-namespace \
  --values values.yaml

From Local Clone

# Clone repository
git clone https://github.com/5ergiu/helm-charts.git
cd helm-charts

# Install chart
helm install my-app ./charts/my-chart \
  --namespace production \
  --create-namespace \
  --values values.yaml

💡 Chart Features

All charts in this repository provide:

Security & Supply Chain

Production Ready

📚 Configuration

Each chart provides extensive configuration options through values.yaml. Key configuration areas include:

Refer to individual chart READMEs for detailed configuration options.

🐳 Building Example Images

The examples/ directory contains sample applications (Next.js, Laravel) with multi-stage Dockerfiles for demonstration purposes. These images are built separately and used by the Helm charts for testing.

Automatic Builds

Docker images are built automatically and pushed to GitHub Container Registry (GHCR) using the Build and Push Images workflow.

When to trigger builds:

Manual Workflow Trigger

Since Dockerfiles change rarely, image builds are manually triggered rather than running on every PR:

  1. Go to Actions → Build and Push Images
  2. Click Run workflow
  3. Optionally specify which apps to build (comma-separated), or leave empty to build all:
    nextjs,laravel
    

Image Tagging Strategy

Images are tagged based on the build target:

Example tags:

# Development
ghcr.io/5ergiu/nextjs:dev
ghcr.io/5ergiu/laravel:dev

# Production
ghcr.io/5ergiu/nextjs:latest

Local Builds

You can also build images locally for testing:

# Build development target
cd examples/nextjs
docker build --target development -t nextjs:dev .

# Build production target
docker build --target production -t nextjs:latest .

🤝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for details on:

Questions or Need Help?

📝 License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

If you find this project useful, please consider giving it a star on GitHub!