검색 본문
hskhsmm.tistory.com 성민의 Develog CI/CD란? 4 CI/CD가 뭐야? 요즘 같이 빠르게 변화하는 시대에 어떻게 하면 시장과 고객의 요구에 빠르게 반응해서 제품을 출시, 업데이트를 할 것인가가 큰 과제이다. 이것을 위해서 세계적으로 많은 기업들이 개발 프로세스로 사용하고 있다. CI/CD란 간단히 말해서 어플리케이션 개발 단계에서부터 배포 때까지 이 모든 단계들을... 2024.04.23 블로그 검색 더보기 alswlfjddl.tistory.com alswl CI/CD(Continuous Integration/Continuous Deployment) CI/CD란? CI(Continuous Integration, 지속적 통합) 개발자들의 새로운 코드의 변경 사항을 정기적으로 빌드 및 테스트 되어 git과 같은 외부 저장소에 통합하는 것을 의미한다. CI를 통해 코드 변경 사항을 신속하게 통합하고 자동으로 빌드 및 테스트하여 문제를 조기에 발견할 수 있다. 이런 CI의 핵심 요소는 다음과 같다. 버전 관리 시스템(VCS) 사용: 모든 코드의 변경 사항은 git과 같은 버전 관리 시스템을 통해 관리된다. 자동화된 빌드: 코드가 저장소에 병합될 때마다 자동으로 빌드가 수행된다. 자동화된 테스트: 빌 왜 필요한가? CI/CD가 왜 필요한가 묻는다면, 한마디로 속도와 효율을 위해서이다. 개발 팀은 끊임 없이 진화하고 있는 개발 환경을 고려할 때, 시장 변화 및 고객 요구에 신속하고 유연하게 대응할 수 있는 개발 안을 구축해야 하는데, 이를 위한 핵심적인 솔루션인 Agile 문화와 DevOps의 한 부분으로 CI/CD 개념이 출현한 것이다. 주로 많이 사용되는 CI/CD 도구 5가지 Jenkins 특징: 오픈 소스 CI/CD 도구로, 플러그인 생태계가 매우 풍부하여 다양한 개발 환경과 통합 가능 장점: 높은 커스터마이징 가능성, 광범위한 커뮤니티 지원 단점: 설정과 유지보수가 복잡할 수 있으며, 리소스 소모가 큼 GitLab 특징: GitLab에 통합된 CI/CD 기능으로, GitLab 리포지토리와 밀접하게 연동 장점: 설정이 간편하고, GitLab과 완벽하게 통합되어 소스 코드 관리와 CI/CD를 한 곳에서 관리 가능 단점: GitLab 자체를 사용하는 것이 필수적이며, 기능이 풍부하지만 모든 기능을 학습하는 CI/CD의 이점 CI/CD를 도입함으로써 얻을 수 있는 이점들은 다음과 같다. 신속한 배포 주기: 코드 변경 사항이 빠르게 배포되어 사용자에게 신속하게 전달 높은 코드 품질: 자동화된 테스트를 통해 코드 품질을 지속적으로 유지하고 개선 가능 개발 효율성 향상: 반복적인 작업이 자동화되어 개발자는 핵심 기능 개발에 집중 가능 문제 조기 발견: 작은 단위로 자주 통합하고 테스트함으로써 문제를 조기에 발견하고 해결 가능 결론 CI/CD는 현재 소프트웨어 개발 시장에서 필수적인 도구로 자리잡고 있다. 각각의 CI/CD 도구들은 고유한 장점과 단점을 가지고 있으므로, 각 개발 팀의 요구사항과 환경에 맞는 도구를 선택하는 것이 중요하다. 사용의 용이성, 커스터마이징 가능성, 지원 언어 및 플랫폼, 커뮤니티 지원 등을 고려하여 가장 적합한 도구를 선정하도록 하자. CI/CD를 통해 지속적인 통합과 지속적인 배포를 통해 개발 프로세스를 자동화하고, 품질을 향상시키며, 배포 주기를 단축할 수 있기에, 이러한 이점들을 활용하여 더욱 효율적이고 안정적인... 6 CI/CD가 왜 필요한가 묻는다면, 한마디로 속도와 효율을 위해서이다. 개발 팀은 끊임 없이 진화하고 있는 개발 환경을 고려할 때, 시장 변화 및 고객 요구에 신속하고 유연하게 대응할 수 있는 개발 안을 구축해야 하는데, 이를 위한 핵심적인 솔루션인 Agile 문화와 DevOps의 한 부분으로 CI/CD 개념이 출현한 것이다. 2024.06.02 sehun5515.tistory.com 나의 프로그래밍 개발일기 [Jenkins] Jenkins로 CI/CD 구축해보기 - (1) 1. Introduction 이번 주를 지나면서 CI/CD 툴로 많이 사용할 수 있는 Jenkins를 사용해 실제 CI/CD 파이프라인을 구축하는 것을 블로그로 남기려고 한다. 실제로 수행했던 시간은 6/1, 6/2 2일 정도로 몇몇 문제에 대해서는 결국 해결하지 못해 플랫폼을 변경하여 구축을 완료하였다. 전체적인 과정과 더불어 왜 이렇게 하는가에 대해서도 공부하면서 적어보려고 한다. 2. CI/CD CI/CD라는 용어는 매우 많이 들어왔던 용어이고 놓쳐서는 안되는 용어와 개념이라고 생각한다. 먼저 CI는 Continuous Integration의 약어로 한국어로는 지속적 통합이라고 한다. 이때 지속적 통합의 대상은 기본적으로(또한 일반적으로) 프로덕션 코드이다. 하나의 프로젝트에서 개인이 모든 부분에 대해 개발을 진행하는 경우는 거의 존재하지 않는다. 결국 여러 사람들이 함께 개발을 수행하며 이로 인해 여러 사람들이 개발한 코드들이 각자의 로컬에서 존재하게 된다. 지속적 통합은 이런 각자 개발한 코드들을 하나로 합치는 것을 3. Jenkins Jenkins는 Java로 만든 오픈소스 CI/CD 툴이다. Jenkins를 활용하면 빌드, 테스트, 배포와 같은 CI/CD 과정을 자동화할 수 있으며 이를 통해 개발자가 이런 CI/CD에 사용하는 자원을 줄일 수 있다. 또한 github와 같은 형상 관리 시스템과 연동하여 commit, push가 발생할 시 위의 CI/CD 과정을 수행하도록 트리거 설정도 가능하다. Jenkins는 여러 Plug-in을 활용하여 여러가지 일들을 수행할 수 있다. 이에 대해서 상세히 말하기에는 주제와 맞지 않기 때문에 이는 또 다른 Sectio 4. AWS Instance 세팅 AWS에서 EC2 인스턴스를 만든다. Ubuntu 22.04 LTS버전을 사용하였다. 인스턴스 유형을 t2 small로 사용했는데 이유는 메모리를 더 줘서이다. 메모리가 부족해 Jenkins가 정상적으로 작동이 잘 되지 않는다는 글을 많이 보았다. 어차피 이후에 swap memory를 사용하여 어느 정도 매꾸겠지만 그래도 기본 메모리가 더 있는게 좋다고 생각해 small로 사용하였다. swap memory를 적극적으로 활용할 생각이 있다면 굳이 small을 사용하지 않아도 될 것 같다. micro로 변경하여 비용을 절감하는 것도 마치며 다음 포스트에서는 Jenkins Instance에 접속해서 Docker 설치와 Jenkins 설치, 세팅을 하는것과 Build 하는 것 까지 진행하도록 한다. 10 이번 주를 지나면서 CI/CD 툴로 많이 사용할 수 있는 Jenkins를 사용해 실제 CI/CD 파이프라인을 구축하는 것을 블로그로 남기려고 한다. 실제로 수행했던 시간은 6/1, 6/2 2일 정도로 몇몇 문제에 대해서는 결국 해결하지 못해 플랫폼을 변경하여 구축을 완료하였다. 전체적인 과정과 더불어 왜 이렇게 하는가에 대해서도 공부하면서 적어보려고 한다. 2024.06.03 [Jenkins] Jenkins로 CI/CD 구축 해보기 - (5) [Jenkins] Jenkins로 CI/CD 구축 해보기 - (4) dev-102.tistory.com 내가 레퍼런스가 되자 AWS Serverless 인프라 및 GitHub Actions CI/CD 구축 기술 스텍 사용하는 기술 스텍을 간단하게 알아보고 인프라 구축 내용으로 넘어가도록 하겠습니다. AWS S3 Amazon S3는 데이터를 버킷 내의 객체로 저장하는 객체 스토리지 서비스 객체는 해당 파일을 설명하는 모든 메타데이터 버킷은 객체에 대한 컨테이너(디렉토리) ⇒ FE에서 build를 통해 만들어내는 산출물(bundle)을 올려두는 용도로 사용합니다. AWS CloudFront Amazon CloudFront는 CDN 서비스 콘텐츠 요청이 발생한 곳과 가까운 Edge Location을 통해 응답 속도 향상 Edge Location에 캐 인프라 구성 및 CI/CD 구축 작업 순서 작업 순서는 아래와 같이 진행됩니다. S3 버킷 생성 ⇒ CloudFront 배포 생성 ⇒ 생성된 버킷 정책 S3에 추가 ⇒ Route 53 도메인 확인 ⇒ GitHub Actions workflow 생성 ⇒ 빌드 후 확인 인프라 구성 작업 내용 1. S3 버킷 생성 AWS S3로 들어가 버킷 만들기를 통해 버킷 생성을 합니다. 버킷 이름은 사용할 도메인(ex. dev-102.tistory.com)으로 적용하고 기존에 사용하고 있는 버킷의 설정을 그대로 들고 올 경우 아래의 설정 복사에서 버킷을 선택하여 적용합니다. 모든 퍼블릭 액세스 차단을 해제 후 버킷 생성을 합니다. 현재 인프라 구성을 CloudFront를 통한 접근만 허용하도록 설정하기 때문에 아래의 내용은 생략 가능하며 버킷의 직접 접근하는 케이스를 위해 따로 정리해두겠습니다.버킷으로 들어가 속성 탭에서 정적 웹사 마무리 인프라 구성 및 CI/CD 구축을 하면서 추가로 설정해야 할 부분이 있을 수 있고 작업 순서도 상황에 따라 바뀔 수 있으니 작업 환경과 상황에 맞게 작업해야겠습니다. 인프라를 구성한 각각의 AWS 서비스를 왜 사용하는지 어떻게 연결하여 사용하는지에 대해서도 공부가 필요합니다. 다음 기회에 각각의 AWS 서비스와 GitHub Actions에 대해 따로 상세하게 포스팅하겠습니다. 이번 포스팅으로 인프라 구성에 도움이 되었으면 좋겠습니다. 참고 자료 https://docs.aws.amazon.com/ https://aws.amazon.c 21 인프라 구성 및 CI/CD 구축을 하면서 추가로 설정해야 할 부분이 있을 수 있고 작업 순서도 상황에 따라 바뀔 수 있으니 작업 환경과 상황에 맞게 작업해야겠습니다. 인프라를 구성한 각각의 AWS 서비스를 왜 사용하는지 어떻게 연결하여 사용하는지에 대해서도 공부가 필요합니다. 다음 기회에 각각의 AWS 서비스와 GitHub Actions에 대해 따로 상세하게 포스팅하겠습니다. 이번 포스팅으로 인프라 구성에 도움이 되었으면 좋겠습니다. 참고 자료 https://docs.aws.amazon.com/ https://aws.amazon.c s3 AWS CloudFront Route 53 aws S3 Github Actions AWS CloudFront aws route 53 aws certificate manager certificate manager 2024.05.11 ai-back-end.tistory.com 개발 일기 [CI/CD] CI/CD란? 6 항상 부족함을 느꼈다. 어쨋든 로컬에서만 돌려서는 실제 서비스를 할 수가 없는데 지금 당장 프레임워크만 다뤄서 될게 아니라 도커, 쿠버네티스, 깃 액션 등 CI/CD에 대한 나의 능력도 키워야 되겠다는 생각이 들었다. 그래서 Docker부터 공부하기 시작했고 EC2에 Git Actions을 통해 CI/CD 자동화에 성공했다고 생각... CI 배포 CD CS CI/CD 2024.05.20 [Git Actions] 깃 액션(Git Actions)를 통한 CI/CD hulrud.tistory.com 주독야독 [SpringBoot] Github Action을 이용한 CI/CD (ElasticBeanstalk) CI : 지속적 통합 CI는 Continuous Intergration(지속적 통합)을 줄인 표현입니다. 좀 더 구체적으로는 빌드와 테스트를 자동화 하는 과정이라고 설명할 수 있습니다. CI는 변경 사항을 자동으로 테스트해 애플리케이션에 문제가 없다는 것을 보장합니다. 그리고 코드를 정기적으로 빌드하고, 테스트하므로 여려 명이 동시에 작업을 하는 경우 충돌을 방지하고 모니터링 할 수 있습니다. 코드 변경 사항이 코드 저장소에 업로드되면 CI를 시작하고, CI 도중 문제가 생기면 실패하드로 코드의 오류도 쉽게 파악할 수 있습니다. CD : 지속적 제공과 지속적 배포 CD는 CI 작업을 끝낸 다음 실행하는 작업입니다. 배포 준비가 된 코드를 자동으로 서버에 배포하는 작업을 자동화하는 것입니다. CI가 통과되면 개발자가 수작업으로 코드를 배포하지 않아도 자동으로 배포하니 개발자는 더욱 편리해 지겠죠. 따라 CD는 Continuous Delivery라는 지속적 제공과 Continuous Deployment라는 두 가지 의미를 가집니다. 지속적 제공 애플리케이션에 적용한 코드의 빌드와 테스트를 성공적으로 진행했을 때 깃허브와 같은 코드 저장소에 자동으로 업로드하는 과정을 말합니다. 최소의 노력으로 코 CI 스크립트 작성하기 스프링 프로젝트를 열어주세요. 프로젝트 루트에 .github 폴더 를 생성하고, 그 안에 workflows 폴더를 만듭니다. workflows 폴더 안에 ci.yml 파일을 추가합니다. ci.yml의 다음 코드를 작성합니다. # 워크플로우의 이름 name: CI # 워크플로우가 시작될 조건 # main branch에서 push작업이 일어났을 때 on: push: branches: [ main ] jobs: build: runs-on: ubuntu-latest # 실행 환경 # 실행 스텝 지정 CD 작성하기 먼저 build.gradle에서 빌드 jar 파일만 생성하도록 그레이들 파일에 다음 코드를 작성해주세요. jar { enabled = false } 그리고 ci.yml 파일을 cicd.yml로 파일 이름을 바꿉니다. 파일의 맨 아래에 다음 코드를 작성합니다. AWS_ACCESS_KEY_ID와 AWS_SECRET_ACCESS_KEY는 AWS IAM 사용자의 Key ID와 Secret입니다. # CD # 현재 시간 가져오기 - name: Get current Time uses: josStor 8 CD는 CI 작업을 끝낸 다음 실행하는 작업입니다. 배포 준비가 된 코드를 자동으로 서버에 배포하는 작업을 자동화하는 것입니다. CI가 통과되면 개발자가 수작업으로 코드를 배포하지 않아도 자동으로 배포하니 개발자는 더욱 편리해 지겠죠. 따라 CD는 Continuous Delivery라는 지속적 제공과 Continuous Deployment라는 두 가지 의미를 가집니다. 지속적 제공 애플리케이션에 적용한 코드의 빌드와 테스트를 성공적으로 진행했을 때 깃허브와 같은 코드 저장소에 자동으로 업로드하는 과정을 말합니다. 최소의 노력으로 코 2024.04.27 통합웹 더보기
서비스 안내 스토리의 글을 대상으로 검색결과를 제공합니다. 자세히보기 srilankakim66.tistory.com YoungKi [CI/CD] GitHub-Action을 통한 자동화 14 github-action으로 진행하겠다. https://www.redhat.com/ko/topics/devops/what-is-ci-cd CI/CD(CI CD, 지속적 통합/지속적 배포): 개념, 툴, 구축, 차이 CI/CD는 애플리케이션의 통합 및 테스트 단계부터 제공 및 배포까지 애플리케이션 라이프사이클 전체에서 지속적인 자동화와 지속적인 모니터링을 제공하는 것을... 2024.04.19 티스토리 검색 더보기 brunch.co.kr Master Seo 카카오클라우드 4탄-16.CI/CD 12 카카오 클라우드의 CI/CD를 알아보자~ kr-central-1 명령서버 centos 환경 GitHub계정 로컬환경에서 git설치 및 계정 세팅 https://kakaocloud.com/ <0> 사전 준비 <1> DevOps Pipeline 환경 설정 <2> 클릭만으로 CI/CD 파이프라인 구축 <3> 서비스 접속 확인하기 <4> 참고 사이트 <0> 사전 준비 1 컨테이너 레지스트리... OS 2024.02.13 브런치스토리 검색 더보기 story.kakao.com 그린아이티아카데미학원 그린아이티아카데미학원 - 카카오스토리 쉽게 확장하고, 효율적으로 리소스를 관리할 수 있습니다. - 개발 및 운영의 효율성 증대: CI/CD 파이프라인에서 쿠버네티스와 도커를 사용하면 빠르고 안정적인 배포가 가능해집니다. 이는 개발자와 운영 팀... 2024.06.04 카카오스토리 검색 더보기
서비스 안내 Kakao가 운영하는 책 서비스 입니다. 다른 사이트 더보기 CI/CD 저자 온개발팀 출간 2024.3.12. e북 10,800원 젠킨스로 배우는 CI/CD 파이프라인 구축 저자 프라노데이 프라모드 ... 출간 2024.3.11. 도서 29,700원 클라우드 서비스 개발자를 위한 AWS로 구현하는 CI/CD 배포 입문 저자 최주호 외 출간 2023.3.15. 도서 18,000원 Automating DevOps with GitLab CI/CD Pipelines 저자 Cowell Chri... 출간 2023.2.24. 도서 39,000원 Building CI/CD Systems Using Tekton 저자 Joel Lord 출간 2022.5.4. 도서 29,000원 Continuous Integration (CI) and Continuous Delivery (CD) 저자 Henry van M... 출간 2023.7.22. 도서 82,080원 한국의 CI프로덕션 작품전(CD) 저자 소프트라인 편집부 출간 1995.2.1. Go 언어로 배우는 웹 애플리케이션 개발 저자 시미즈 요이치로 출간 2024.2.15. 도서 26,100원 데브옵스관리자 저자 씨익북스 편집부 출간 2024.5.8. e북 4,590원 21세기 홍보 CI 광고(프로페셔널하고 미래 지향적인)(CD1장포함)(양장본... 저자 현대경영연구소 출간 2014.3.10. 도서 22,500원 더보기 (주)카카오는 상품판매의 당사자가 아닙니다.법적고지 안내 (주)카카오는 통신판매중개자로서 통신판매의 당사자가 아니며 상품의 주문 배송 및 환불 등과 관련한 의무와 책임은 각 판매자에게 있습니다.
Kotlin World kotlinworld.com/ 신청자 작성 블로그 자료를 제공하며 Kotlin, Android, Spring, CI, CD 분야에 대해 다룹니다 DevOps.... CI/CD www.scmtechblog.net/ 웹수집 A blog about Release Engineering, SCM, DevOps Build, Deployment, Jenkins, svn, git Source control... CI/CD tools for top teams buildkite.com/ 웹수집 Buildkite is a platform for running fast, secure, and scalable continuous integration pipelines... 사이트 더보기
서비스 안내 Melon Company가 운영하는 음악 서비스입니다. 다른 사이트 더보기 Mozart : Don Giovanni K.527 - Duettino. La Ci Darem La Mano (모차르트 : 돈 지오반니 - 이중창. 그대 손을 잡고) Various Artists 앨범 가장 유명한 모차르트... 2010.01.28. Qi You Ci Li (Album Version) Blue Jeans 앨범 Band Sound ... 2009.01.01. Come and Talk to Me (Remix) Jodeci 앨범 R&B Hits CD... 2005.