14. Docker에서 CI 및 CD 구현

목차

1. 소개

2. CI/CD란?

3. Jenkins 배포

3.1 젠킨스 다운로드

3.2 젠킨스 시작하기

3.3 Jenkins 페이지 방문

4. Jenkins가 애플리케이션을 배포합니다.

5. Jenkins는 Docker 애플리케이션의 지속적인 통합 및 배포를 구현합니다.

5.1 도커파일 생성

5.2 젠킨스와 도커 통합

6. 요약


1. 소개

CI/CD(지속적 통합)는 소프트웨어 개발 경험을 요약한 것입니다. 이는 개발 팀과 제공 팀이 빈번하고 신속한 통합을 달성하는 데 도움이 될 뿐만 아니라 작업 제품을 테스트하여 프로젝트 개발 및 제공 엔지니어링의 오류를 가능한 한 빨리 찾는 데 사용됩니다. 프로젝트 통합과 프로젝트 전달이 더 자주, 더 일찍 이루어질수록 문제가 더 빨리 발견된다는 의미입니다. 따라서 지속적인 통합(CI/CD)을 통해 코드 오류를 적시에 발견하고 해결할 수 있으며, 코드 품질을 향상시키고 오류 처리 비용을 절감할 수 있습니다.

2. CI/CD란?

CI/CD는 애플리케이션 개발 단계에 자동화를 도입해 고객에게 애플리케이션을 자주 제공하는 방식이다. CI/CD에는 다음 3가지 개념이 포함됩니다.

  • CI(지속적 통합): 지속적인 통합.
  • CD(지속적인 전달): 지속적인 전달.
  • CD(지속적인 배포): 지속적인 배포입니다.

오픈 소스이자 가장 많이 사용되는 지속적 통합 도구인 Jenkins는 프로젝트에서도 널리 사용됩니다. 오늘 소개할 Jenkins를 예로 들어보겠습니다.

3. Jenkins 배포

Jenkins는 Java 언어를 기반으로 개발되기 때문에 JDK 환경을 설치해야 하는데 여기에 JDK8이 설치됩니다.

3.1 젠킨스 다운로드

공식 웹사이트에서 Jenkins.war을 직접 다운로드하여 서버에 업로드할 수 있습니다. Jenkins 다운로드 및 배포

jenkins가 지원하는 JDK 버전은 여러 LTS 버전에 필요한 Java 환경의 공식 문서에서 확인할 수 있습니다.

우리의 JDK 환경은 java8이므로 버전 2.346.3의 war 패키지가 여기에서 다운로드됩니다.

빠른 다운로드 주소: /war-stable/2.346.3 색인

wget --no-check-certificate https://get.jenkins.io/war-stable/2.346.3/jenkins.war

여기서 미러링 문제로 인해 몇번 더 시도하셔야 합니다.

3.2 젠킨스 시작하기

다운로드 후 Jenkins를 시작합니다.

java -jar jenkins.war

아래와 같은 정보가 출력되면 시동에 성공한 것입니다.

3.3 Jenkins 페이지 방문

브라우저 접속 http://192.168.74.128:8080/ .

후속 Jenkins 설치 단계는 여기에서 무시되며 많은 튜토리얼이 있어야 합니다.

설치가 완료되면 Jenkins 메인 페이지로 이동합니다.

4. Jenkins가 애플리케이션을 배포합니다.

여기서는 전통적인 Jenkins 구성 애플리케이션에 대해 자세히 설명하지 않겠습니다. 여기 Docker 열이 있으므로 Docker 애플리케이션의 지속적인 통합 및 배포를 실현하기 위해 다음 섹션에 중점을 둘 것입니다.

5. Jenkins는 Docker 애플리케이션의 지속적인 통합 및 배포를 구현합니다.

Docker 애플리케이션 개발에서 가장 일반적인 방법은 코드 웨어하우스에서 관리할 수 있는 Dockerfile 파일을 사용하는 것입니다.

일반적으로 기업의 코드 웨어하우스는 모두 비공개이며, 부서에서는 SVN, GitLab 등과 같은 자체 비공개 코드 웨어하우스를 구축합니다. 여기서 시연하는 것이 편리하므로 직접 구축하지 않고 Github을 이용하여 직접 시연합니다(주로 게으름).

Jenkins 서버를 배포하려면 Git이 미리 설치되어 있어야 합니다.

5.1 도커파일 생성

간단한 nginx 페이지를 구현하는 Dockerfile을 로컬로 만듭니다.

FROM nginx
RUN echo '<h1>this is jenkins build demo,version:1</h1>' > /usr/share/nginx/html/index.html

파일을 Github 저장소에 커밋합니다.

동시에 웨어하우스의 설정에서 웹후크를 구성하고 코드를 제출할 때마다 Jenkins에 http 요청을 보내는 데 사용되는 페이로드 URL에 대한 Jenkins의 주소를 구성합니다.

5.2 젠킨스와 도커 통합

Jenkins에서 Freestyle 프로젝트 작업을 만듭니다.

소스코드 관리에서 Git 관련 정보를 구성합니다.

그런 다음 빌드 옵션에서 "쉘 실행"을 선택하십시오.

명령 대화 상자에 프레임워크 컨테이너 명령을 입력합니다.

docker build -t my_jenkins_docker_demo .
docker run -d -p 8081:80 my_jenkins_docker_demo

저장을 클릭한 후 지금 빌드를 클릭합니다.

빌드가 성공적으로 완료되면 http://192.168.74.128:8081 주소를 방문하세요.

6. 요약

현재까지 Jenkins와 Docker의 통합이 완료되어 애플리케이션의 CI/CD를 구현할 수 있게 되었습니다. 실제 프로젝트 개발에는 많은 양의 프로그램 코드와 종속 라이브러리, 환경이 포함될 수 있지만 Jenkins를 사용하여 CI/CD를 구현하는 과정은 비슷합니다.

Supongo que te gusta

Origin blog.csdn.net/p793049488/article/details/132536397
Recomendado
Clasificación