프로젝트 소개

배포 서비스는 ansonallard.com 인프라에 맞게 특별히 조정된 자체 호스팅 서비스의 CI/CD 파이프라인을 관리하기 위한 전문 도구입니다. Go로 구축되었으며, UFW를 통한 엄격한 방화벽 관리 및 빌드 및 배포 프로세스 중 경합 조건을 방지하기 위한 격리된 Docker 환경과 같은 견고한 프로덕션 준비 구성을 강조합니다. 주요 기능은 다음과 같습니다: - **이중 Docker 데몬 아키텍처**: 안정성을 보장하고 충돌을 방지하기 위해 빌드 및 배포용 별도의 Docker 데몬을 요구하며, 자세한 systemd 구성 지침을 제공합니다. - **Gitea 통합**: 버전 제어 및 아티팩트 관리를 위해 Gitea와 통신하며, Gitea 인스턴스에 연결하기 위한 특정 설정 지침을 제공합니다. - **자동 클라이언트 생성**: 개인 액세스 토큰(PAT)을 통한 인증을 위해 특정 .npmrc 및 Go 환경 변수 구성을 요구하며, 개인 레지스트리에서 자동 생성된 TypeScript 및 Go 클라이언트를 가져오는 것을 지원합니다. - **버전 관리**: 커밋 중 시맨틱 버전 업데이트를 처리하는 스크립트(`update_service_version.sh`)를 포함합니다. - **프로덕션 보안**: 보안을 유지하면서 필요한 트래픽을 허용하기 위한 Linux 방화벽 규칙 구성에 대한 명시적인 지침을 제공합니다. 이 서비스는 Gitea 및 개인 패키지 레지스트리와 통합된 제어되고 격리된 자동화된 배포 파이프라인이 필요한 자체 호스팅 인프라를 운영하는 사용자에게 이상적입니다.