블로그 소개

  • 2025년 12월 6일
Table Of Contents

온프렘 Proxmox 서버 + k8s로 배포하는 블로그입니다.

  • 스택
graph TD
    A[Proxmox
    하이퍼바이저] --> B["Kubernetes
    (k8s)"]

    G["CI/CD
    (Gitea Actions)"] --> H["Docker Build
    (멀티 스테이지)"]
    H --> I["Harbor Registry
    (컨테이너 레지스트리)"]
    I --> J["ArgoCD
    (GitOps)"]
    J --> B

    H --> L["Stage 1: Hugo Builder
    (Go + Node.js)
    정적 파일 생성"]

    H --> M["Stage 2: Nginx
    (Alpine)"]
    L --> M

    B --> N["Docker Container
    (Hugo + Nginx)"]
    M --> N
    N --> O["정적 파일 서빙"]

위 다이어그램은 Proxmox를 기반으로 Kubernetes에 배포된 블로그의 기술 스택과 배포 파이프라인을 보여줍니다.

인프라 계층:

  • Proxmox: On-premise 가상화 플랫폼, Kubernetes 클러스터의 하이퍼바이저 역할
  • Kubernetes (k8s): 컨테이너 오케스트레이션 및 서비스 배포 관리

CI/CD 파이프라인:

  • CI/CD (Gitea/GitHub Actions): 코드 푸시 시 자동으로 빌드 및 배포 프로세스 트리거
  • Docker Build (멀티 스테이지):
    • Stage 1: Hugo 빌더 이미지에서 TailwindCSS 컴파일 및 정적 사이트 생성
    • Stage 2: Nginx Alpine 이미지로 정적 파일만 복사하여 최종 이미지 생성
  • Harbor Registry: 빌드된 Docker 이미지를 저장하는 컨테이너 레지스트리
  • ArgoCD (GitOps): Harbor Registry의 이미지를 Kubernetes에 자동 배포하는 GitOps 도구

애플리케이션 계층:

  • Hugo: Go로 작성된 정적 사이트 생성기, Markdown 콘텐츠를 HTML로 변환
  • TailwindCSS: npm 패키지로 관리되는 CSS 프레임워크, 빌드 시 Hugo와 함께 컴파일
  • Nginx: Docker 컨테이너 내에서 정적 HTML 파일을 서빙하는 웹 서버
Share :