DevOps 10

CI/CD 파이프라인 구축하기 - 5.2 (Jenkins, Ansible, Kubernetes(EKS) 병합하기)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/145 CI/CD 파이프라인 구축하기 - 5.1 (파이프라인 구축 전 kubectl, eksctl 설정 및 yaml 파일 작성하기)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/144 CI/CD 파이프라인 구축하기 - 4.2 (Ansible Playbook을 이용한 Docker 컨테이너 배포)아래 포스팅에서 이어집니다.https://wooinge.tistory.com/143 CI/CD 파이wooinge.tistory.com  저번 포스팅에서는 eks 클러스터를 생성하기 위한 사전 설정을 주로 진행했었다.그리고 쿠버네티스 pod, service, deployment를 생성하는 매니페스트 파일을 작성하..

DevOps 2024.12.18

CI/CD 파이프라인 구축하기 - 5.1 (파이프라인 구축 전 kubectl, eksctl 설정 및 yaml 파일 작성하기)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/144 CI/CD 파이프라인 구축하기 - 4.2 (Ansible Playbook을 이용한 Docker 컨테이너 배포)아래 포스팅에서 이어집니다.https://wooinge.tistory.com/143 CI/CD 파이프라인 구축하기 - 4.1 (Ansible 서버 구축 및, Jenkins, Docker 통합)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/142 CI/CD 파이프라wooinge.tistory.com 현재 구축한 CI/CD 파이프라인의 모습은 아래와 같다.만약에 도커에 장애가 생겨 컨테이너가 고장나버리면 어떻게 될까?도커는 아쉽게도 컨테이너가 죽었을 때 다시 살려내는 방법이 존재하지 않는..

DevOps 2024.12.17

CI/CD 파이프라인 구축하기 - 4.2 (Ansible Playbook을 이용한 Docker 컨테이너 배포)

아래 포스팅에서 이어집니다.https://wooinge.tistory.com/143 CI/CD 파이프라인 구축하기 - 4.1 (Ansible 서버 구축 및, Jenkins, Docker 통합)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/142 CI/CD 파이프라인 구축하기 - 3.2 (Docker 컨테이너 자동 빌드 및 자동 배포)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/141 CI/CD 파이프라wooinge.tistory.com 앞에서 Ansible Server 구축과 Jenkins - Ansible - Docker를 통합하는 과정을 거쳤다.이번에는 Ansible Playbook으로 실행할 코드를 직접 작성하고 도커 이미지 빌드와 컨테..

DevOps 2024.12.16

CI/CD 파이프라인 구축하기 - 4.1 (Ansible 서버 구축 및, Jenkins, Docker 통합)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/142 CI/CD 파이프라인 구축하기 - 3.2 (Docker 컨테이너 자동 빌드 및 자동 배포)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/141 CI/CD 파이프라인 구축하기 - 3.1 (Docker 설정 및 Jenkins SSH server 설정하기)CI/CD 파이프라인 구축하기 - 2에서 이어집니다!https://wooinge.tistory.com/139wooinge.tistory.com 지난 포스팅에서는 Jenkins와 Docker를 통합하여 Apache Tomcat 이미지를 이용한 컨테이너 배포를 진행하였다.빌드 결과물이 생성되면 ssh 서버로 배포하게 되고, 배포 시 명령어를 이용하여..

DevOps 2024.12.16

CI/CD 파이프라인 구축하기 - 3.2 (Docker 컨테이너 자동 빌드 및 자동 배포)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/141 CI/CD 파이프라인 구축하기 - 3.1 (Docker 설정 및 Jenkins SSH server 설정하기)CI/CD 파이프라인 구축하기 - 2에서 이어집니다!https://wooinge.tistory.com/139 CI/CD 파이프라인 구축하기 - 2 (Tomcat)CI/CD 파이프라인 구축하기 - 1에서 이어집니다!https://wooinge.tistory.com/93 CI/CD 파이프라인wooinge.tistory.com    현재 젠킨스 서버에서 Publish Open SSH 플러그인을 설치까지만 한 상태다.이제는 빌드와 배포 모두 자동화하는 작업을 진행해보겠다.  [목표]GitHub 코드를 가져올 Jenkins ..

DevOps 2024.12.13

CI/CD 파이프라인 구축하기 - 3.1 (Docker 설정 및 Jenkins SSH server 설정하기)

CI/CD 파이프라인 구축하기 - 2에서 이어집니다!https://wooinge.tistory.com/139 CI/CD 파이프라인 구축하기 - 2 (Tomcat)CI/CD 파이프라인 구축하기 - 1에서 이어집니다!https://wooinge.tistory.com/93 CI/CD 파이프라인 구축하기 - 1 (Git, Jenkins, Maven(Java))* Jenkins: 지속적인 통합(CI) 서비스를 제공하는 오픈 소스 도구* Maven: Javawooinge.tistory.com 지난 포스팅에서는 Apache Tomcat과 Jenkins를 통합한 CI/CD 파이프라인을 구축했다.이번에는 Jenkins와 Docker를 연결하고 코드를 배포하는 실습을 진행할 것이다.   [CI/CD 파이프라인 구축 실습 ..

DevOps 2024.12.13

[문제 해결] Dockerfile에서 tar 명령어 실행 안 될 때 해결 방법

문제 상황Dockerfile을 작성하여 amazon linux 2 이미지에 tomcat 패키지를 다운로드하고 압축 해제하려고 했었다.이미지를 빌드할 때 tar 명령어를 실행하는 라인에서 에러가 발생하면서 이미지를 빌드할 수 없는 상황이 발생했다.# DockerfileFROM amazonlinux:2RUN yum install java-17-amazon-corretto -yRUN mkdir /opt/tomcatWORKDIR /opt/tomcatRUN yum install -y tarADD https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.98/bin/apache-tomcat-9.0.98.tar.gz .RUN tar -xvzf apache-tomcat-9.0.98.tar.gz..

DevOps 2024.12.13

CI/CD 파이프라인 구축하기 - 2 (Tomcat)

CI/CD 파이프라인 구축하기 - 1에서 이어집니다!https://wooinge.tistory.com/93 CI/CD 파이프라인 구축하기 - 1 (Git, Jenkins, Maven(Java))* Jenkins: 지속적인 통합(CI) 서비스를 제공하는 오픈 소스 도구* Maven: Java 프로젝트 관리 도구로, 컴파일 및 빌드를 수행하고 배포 파일을 생성할 수 있다. [CI/CD 파이프라인 구축 실습 목표]GitHub와wooinge.tistory.com 이전 포스팅에서 Git, Jenkins, Maven을 통합한 CI/CD 파이프라인을 구축했다.더 나아가서 이번엔 Jenkins 콘솔을 활용하여 Tomcat Server에 코드를 배포하는 실습을 진행할 것이다. [CI/CD 파이프라인 구축 실습 목표]Je..

DevOps 2024.12.13

CI/CD 파이프라인 구축하기 - 1 (Git, Jenkins, Maven(Java))

* Jenkins: 지속적인 통합(CI) 서비스를 제공하는 오픈 소스 도구* Maven: Java 프로젝트 관리 도구로, 컴파일 및 빌드를 수행하고 배포 파일을 생성할 수 있다. [CI/CD 파이프라인 구축 실습 목표]GitHub와 Jenkins의 통합 → GitHub에 있는 코드를 Jenkins 서버로 가져온다.Jenkins와 Maven의 통합 → Jenkins에서 빌드 프로세스를 Maven으로 자동화1. Jenkins 서버 구성하기EC2 인스턴스 생성하기이름: jenkins-serverAMI: Amazon Linux 2인스턴스 유형: t2.micro새로운 키페어 생성: devops-project-key보안 그룹 생성: jenkins-server-sg* MobaXTerm 사용할 것이기 때문에 .pem으..

DevOps 2024.12.04

CI/CD란? 개념/주요 단계/장점

CI/CD(Continuous Integration and Continuous Delivery/Deployment)약어를 풀어보자면 CI/CD는 지속적인 통합, 지속적인 배포(또는 전달)를 뜻한다. 총 2가지의 의미가 담겨 있다. - CI(지속적 통합): 빌드 및 테스트를 수행한 뒤, 개발자가 코드 변경 내용을 중앙 리포지토리에 정기적으로 병합하는 것- CD(지속적 배포 또는 전달): 사용자들이 경험하게 될 실제 운영 환경(프로덕션)을 배포하는 과정을 자동화한 것  CI/CD의 주요 단계   1. Coutinuous Integration(CI)코드 변경 사항을 병합하여 중앙 저장소에 통합자동화된 빌드 및 테스트 실행 → 유닛 테스트 및 통합 테스트를 진행!2. Continuous DeliveryCI를 통..

DevOps 2024.12.02