02. Container

컨테이너 레포지토리 운영 관리 방안

카이저일공 2024. 1. 20. 19:52
컨테이너 이미지 운영 및 구성

컨테이너 이미지 운영 및 구성

가. 프로세스 단계

  1. Docker Hub에서 Base Image 다운로드: 공개 컨테이너 레포지토리인 Docker Hub에서 기본 이미지를 다운로드합니다.
  2. 1차 저장소에 Base Image 저장: 다운로드한 이미지는 먼저 1차 저장소에 저장됩니다. 여기서 초기 보안 점검이 수행될 수 있습니다.
  3. 보안 점검 후 2차 저장소로 이동: 보안 점검을 통과한 이미지는 2차 저장소로 이동하여 보관됩니다.
  4. Workflow 통해 보안 승인 절차 진행: 이미지는 승인 절차를 거친 후 내부 개발망에서 사용될 수 있습니다. 개발된 애플리케이션과 Base Image가 결합된 이미지는 최종적으로 Harbor 레포지토리에 저장됩니다.
  5. Argo CD를 통한 배포: Harbor 레포지토리에 저장된 이미지는 Argo CD를 통해 DevOps 프로세스를 거쳐 테스트(Stag) 및 프로덕션(Prod) 환경에 배포됩니다.

나. 사용되는 솔루션 추천

1. 보안 점검

  • Clair: 취약점 스캔을 위한 오픈 소스 프로젝트입니다.
  • Trivy: 간단하고 포괄적인 보안 스캐너로, 컨테이너 이미지의 취약점을 탐지합니다.
  • Anchore: 보다 상세한 보안 정책을 설정하고 관리할 수 있는 솔루션입니다.

2. 이미지 레포지토리

  • Harbor: 보안, 신뢰성 및 고가용성을 위한 오픈 소스 컨테이너 이미지 레포지토리입니다.
  • JFrog Artifactory: 더욱 광범위한 패키지 관리 기능을 제공하는 엔터프라이즈급 솔루션입니다.

3. CI/CD 및 배포

  • Argo CD: Kubernetes 기반의 GitOps 연속 배포 도구입니다.
  • Jenkins: 커스터마이징이 가능하고 널리 사용되는 CI/CD 도구입니다.
  • Tekton: Kubernetes 네이티브 CI/CD 파이프라인 리소스를 제공합니다.

회사의 기술 스택, 보안 요구 사항, 인프라 환경에 맞게 적절한 솔루션을 선택하는 것이 중요합니다.