본문 바로가기

ci/cd22

ArgoCD 활용 GitOps 시스템 K8S CI/CD Pipeline 구축 ArgoCD는 Kubernetes 클러스터에서 애플리케이션을 배포 및 관리하기 위한 오픈 소스 도구 중 하나입니다. ArgoCD는 GitOps라는 개념을 기반으로 하여 클러스터 구성을 Git 리포지토리에 정의하고, Git 리포지토리에 있는 정의를 기반으로 애플리케이션을 배포하고 업데이트하는 데 사용됩니다. 주요 특징 GitOps 방식의 배포: ArgoCD는 애플리케이션 및 클러스터 설정을 Git 리포지토리에 정의합니다. 이를 통해 변경 사항의 추적, 버전 관리, 롤백 등을 쉽게 할 수 있습니다. 자동 동기화: Git 리포지토리에 저장된 애플리케이션의 정의를 기반으로 ArgoCD는 클러스터의 상태를 지속적으로 감지하고, 정의와 클러스터 간의 불일치가 감지되면 자동으로 동기화를 수행합니다. 멀티-클러스터 지.. 2024. 1. 8.
자바스크립트 슈퍼셋 정적 타입 검사 기능 확장 TypeScript 활용 Java와 TypeScript은 서로 다른 프로그래밍 언어입니다. Java는 객체지향 프로그래밍 언어이며, 주로 서버 측 애플리케이션 개발에 사용됩니다. 반면 TypeScript는 Microsoft에서 개발한 프로그래밍 언어로, JavaScript의 확장이며 정적 타입을 지원하는 언어입니다. TypeScript는 JavaScript의 슈퍼셋으로, JavaScript의 기능을 포함하면서 추가적인 정적 타입 검사와 클래스 기반 객체지향 프로그래밍을 지원합니다. 이는 개발자가 코드를 더 안전하게 유지하고 복잡한 프로젝트를 더 쉽게 유지보수할 수 있도록 도와줍니다. Java와 TypeScript은 주로 다른 분야에서 사용되지만, 웹 개발 분야에서는 TypeScript가 JavaScript의 확장으로 많이 사용되.. 2023. 12. 30.
Kubernetes 구성파일 GitLab CI/CD 통한 자동화 적용(autoDeploy) GitLab을 사용하여 Kubernetes에 Manifest 파일을 자동으로 배포하는 프로세스를 설정하는 것은 다양한 방법으로 가능합니다. 여러 도구 및 접근 방식이 있지만, 가장 일반적인 방법 중 하나는 GitLab CI/CD를 사용하는 것입니다. 아래는 간단한 가이드라인입니다. GitLab Repository에 Manifest 추가 Kubernetes Manifest 파일들을 GitLab 저장소에 추가합니다. 이 Manifest 파일은 배포하려는 애플리케이션의 구성을 정의합니다. GitLab CI/CD 파일 추가 GitLab CI/CD를 사용하여 자동 배포를 설정하려면 .gitlab-ci.yml 파일을 프로젝트 루트에 추가해야 합니다. stages: - deploy deploy: stage: depl.. 2023. 12. 18.
Docker 컨테이너 엔진 대체재 Podman LXC 기술 활용 Podman은 Linux 환경에서 컨테이너를 관리하는 도구로, Docker와 비슷한 기능을 제공하지만 몇 가지 중요한 차이점이 있습니다. 주요 차이점은 다음과 같습니다. 데몬 없음(Daemonless): 가장 큰 차이점 중 하나는 Podman이 데몬 없이 동작한다는 것입니다. Docker는 백그라운드에서 돌아가는 데몬 프로세스가 필요하지만, Podman은 데몬 없이 직접 실행됩니다. 이는 사용자에게 더 간단한 환경을 제공하고 보안 측면에서 이점을 가질 수 있습니다. 루트 권한 없는 컨테이너 실행(Rootless): Podman은 루트 권한이 없어도 컨테이너를 실행할 수 있는데, Docker는 기본적으로 루트 권한이 필요합니다. 이는 보안 상의 이점을 제공하며, 특히 멀티유저 환경에서 더 안전한 사용을 가.. 2023. 12. 10.
Nexus Repository Manager 활용한 Docker 이미지 및 라이브러리 관리 Nexus Repository Manager는 소프트웨어 개발 및 빌드 프로세스에서 아티팩트(라이브러리, 패키지, 바이너리 등)를 저장하고 관리하는 데 사용되는 강력한 관리 도구 중 하나입니다. 이 도구는 다양한 패키지 유형에 대한 저장 및 검색을 지원하며, 특히 Java 개발자들 사이에서 널리 사용됩니다. Docker 이미지 또한 Nexus Repository Manager에서 관리할 수 있습니다. Docker 이미지를 Nexus Repository Manager에 저장하고 관리하는 방법은 다음과 같습니다. Nexus Repository Manager 설치 및 설정 Nexus Repository Manager 설치 Sonatype 공식 웹사이트에서 Nexus Repository Manager를 다운로드.. 2023. 11. 30.