https://helloahram.tistory.com/246 여기서 이어서 진행 중 -
Jenkins #1 로컬 Docker 환경에서 Freestyle Job 실행해보기
정글에서는 AWS Credit 을 받아 AWS 환경을 구성하고 Jenkins 도 설치했지만 여기서는 Local 환경에 Docker 를 이용하여 Jenkins 를 구성해보려고 한다 정글에서 진행한 CI/CD via Jenkins + Docker https://helloahram.tis
helloahram.tistory.com
Github Repo 준비하기
연동할 프로젝트의 Root 폴더에 Jenkinsfile 파일을 만들고, Pipeline 을 넣어준다
그리고 Jenkins 에서 접근할 수 있도록 권한 설정을 해준다
Github Setting > Developer Settings > Personal Access Tokens > Tokens (Classic) 에서
Generate new Token 버튼을 선택하여 Token 을 만들고 키는 어딘가에 (ex. 메모장) 적어주면 Github 설정 끝!

Jenkins 에 Github Integration Plugin 설치
Jenkins 관리 > Plugins 화면에서 Github Integration 을 검색해서 설치해준다



상태가 대기중으로 뜬다고 기다릴 필요 없다, Page Refresh 하면 끝나있음ㅋ
Jenkins Credentials 등록
Jenkins 관리 > 자격 증명 (Credentials) 화면에서 System 링크 > Global Credentials 링크를 차례로 선택한다
그리고 우측 상단의 Add Credentials 버튼을 선택한다




New Credentials 화면에서 Username 에는 Github ID,
Pasword 는 Github 의 Personal Access Token 을 넣어 준다

Credential 등록 완료!

Pipeline Job 만들기
Jenkins Dashboard 로 다시 넘어와서 새로운 Item 을 선택하고
Item name 을 입력한 다음 Pipeline 을 선택한다


스크롤을 내려 Pipeline 영역에서 Definition 은 Pipeline Script from SCM 을 선택하고,
SCM 은 Git, Repository URL 은 Github Repo URL 을 넣어준다
Repo URL 을 넣으면 Failed to connect 어쩌구저쩌구 하는 경고 문구가 뜨는데,
그 아래 Credentials 에서 아까 추가한 Credential 을 선택해주면 경고 문구가 없어진다
Branches to build 영역에서 Branch Specifier 는 브랜치 명을 넣어주면 된다
그럼 설정 끝!

이 아래는 전부 다 실패 사례다
정글에서는 Freestyle 로 했지만, 이번엔 Pipeline 을 사용해서 첫 시도다 보니
시행 착오가 많을 예정^_^,..ㅎㅎㅎ
Job Build 하기 #1
얼추 설정은 다 끝났으니 [지금 빌드] 를 선택한다

빌드가 실패했다ㅠㅡㅠ
다행히 (?) Github 연동은 성공했다
Console Output 에서 보니, Python3: not found 로그가 보인다

앗, Jenkins Docker 컨테이너에 Python 을 설치해야 한다
Docker 컨테이너에 Root 권한으로 접속해서 (apt 는 Root 권한이 필요함) Python 을 설치해준다
docker exec -it -u root jenkins-lts bash
apt update && apt install -y python3 python3-pip python3-venv

Job Build #2

Playwright 실행 중 필요한 시스템 라이브러리가 누락되어 Dependency 문제가 발생했다
Error MSG 가 알려준 대로 playwright install-deps 명령어를 실행하여 필요한 라이브러리를 설치하려고 했는데
컨테이너 내에서는 Playwright 명령이 인식되지 않았다
흠 시간 관계 상 이건 내일 다시 봐야겠다,.ㅎ
'TIL > DOCKER' 카테고리의 다른 글
| Jenkins #3 Github Repo 와 Jenkins 연동하기 - 성공 버전 (1) | 2025.07.18 |
|---|---|
| Jenkins #1 로컬 Docker 환경에서 Freestyle Job 실행해보기 (0) | 2025.07.14 |
| 쿠버네티스와 도커, 관계 정리 (0) | 2025.02.03 |
| [NGINX] EC2 Amazon Linux 에 NGINX 설치하기 (0) | 2025.01.12 |
| [AWS] 탄력적 IP 연결 (0) | 2025.01.11 |