Skip to content

DanielSchwartz1/personal-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Personal Website Template

Build & Push Kubernetes ArgoCD

This repository contains both the source code for my personal website https://schwartzdaniel.com and the GitOps-driven infrastructure (Kubernetes/Helm) that powers the entire project.

Demo

Demo


Tech Stack

The stack is built with a focus on automation and SRE best practices:

  • Infrastructure: Linux VPS (Rocky Linux release 9.1)
  • Orchestration: k3s (Lightweight Kubernetes).
  • GitOps: ArgoCD for Continuous Deployment.
  • Automation: ArgoCD Image Updater for automated image tracking via digest.
  • Registry: Harbor (Self-hosted) for secure container image management.
  • CI/CD: GitHub Actions for building and pushing Docker images.
  • Web Server: Nginx (optimized for static content/React).

Automated Deployment Workflow (GitOps)

I have implemented a fully automated "Push-to-Production" pipeline:

  1. Commit & Push: Any change to the main branch triggers a GitHub Action.
  2. Build: A new Docker image is built and tagged with the unique Git SHA.
  3. Push: The image is pushed to my private Harbor registry using the :dev tag.
  4. Sync: The ArgoCD Image Updater detects a change in the image's digest (hash value) on Harbor.
  5. Deploy: ArgoCD automatically overrides the Helm parameters and rolls out the new image without any manual intervention.

Contribution

I welcome contributions to improve the website template.


License

Distributed under the MIT License. See the LICENSE file for more information.

About

Helm charts and static files for my personal website deployed on K3S via Github Actions and ArgoCD

Topics

Resources

License

Stars

Watchers

Forks