Jenkins(3)
-
[Jenkins] 원격 Jenkins 서버로 CI/CD 환경 구현하기
이번 포스팅에선 jenkins pipeline 생성 방법과 jenkinsfile script를 작성하여 애플리케이션을 배포하는 방법에 대해서 다뤄보고자 한다. CI/CD Flow github로부터 소스코드 pull build & test 빌드된 jar 파일 배포 서버로 전송 애플리케이션 서버에 접속 전송된 jar 파일 실행하여 애플리케이션 배포 Jenkins Global Configuration 설정 JDK, Git, Gradle 등의 설정을 미리 생성해놓고 여러 Jenkins Project에서 참조하여 사용할 수 있도록 한다. JDK 설정 JAVA_HOME 값을 출력하여 jenkins console에 등록한다. $ echo $JAVA_HOME Git 설정 git 커멘드 경로도 등록해준다. $ which..
2023.02.09 -
[Jenkins] Jenkins Github 연동하기
이번 포스팅에선 Jenkins와 Github간 SSH 연동 방법에 대해서 다뤄 보겠다. SSH란? Secure SHell은 네트워크 상의 원격 컴퓨터에 접속하여 명령을 실행할 수 있도록 해주는 프로토콜이다. 기존에는 Telnet 방식을 사용했는데 암호화를 제공하지 않기 때문에 보안상 취약하다는 단점을 보완한 방법이 SSH이다. 암호화 방식에는 대칭키 방식과 비대칭키 방식 두가지를 사용한다. 비대칭키 방식은 클라이언트와 서버간 인증시 사용한다. 대칭키 방식은 클라이언트와 서버간 데이터를 주고받을 때 사용한다. 비대칭키 방식 비대칭 키 방식은 두 호스트 간에 공개키와 개인키 쌍으로 인증하는 방식이다. 공개키는 .pub, 개인키는 .pem의 형식을 띈다. 공개키는 유출되어도 크게 문제가 되지 않는 키이며 공개..
2023.02.09 -
[Jenkins] CentOS 원격 서버 / Local MacOS 환경에서 Jenkins 설치하기
Jenkins란? CI/CD를 제공하는 Tool CI/CD란? CI/CD는 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발 생산성을 높이는 것을 말함 Continuous Integration(CI) 지속적인 통합 Continuous Delivery(CD) 지속적인 배포 왜 Jenkins를 사용할까? Jenkins가 등장하기 전에는 일정 시간마다 개발자가 직접 빌드를 하는 비용이 존재했다(Nightly Build라고 함) Jenkins는 Git과 연동하여 소스 커밋이 감지되면 자동으로 테스트와 빌드, 배포를 진행하여 개발 생산성을 높일 수 있다 Jenkins는 오픈소스여서 다양한 플러그인을 지원한다 Jenkins 설치 전제 조건 최소 256 MB RAM, 1GB Drive Space 필요..
2022.04.05