0. 목표Pipeline Item으로 GitHub Public Repository를 Docker 기반으로 빌드하는 것이다. 즉, Agent 서버 자체 JDK에 의존하지 않고, Docker 이미지 안에서 빌드 환경을 고정하는 방식을 목표로 했다.추후 배포 서버도 AWS로 구축이 완료되면 ECR을 통해서 자동 배포까지 고려하고 있다.1. Agent 사전 점검Agent 서버에 접속해서 도커가 정상적으로 설치되어 있는지 확인한다.docker --versiondocker ps또한, 그리고 Jenkins Agent 실행 유저가 docker 그룹에 속해 있어야 한다.sudo usermod -aG docker ec2-usergit 도 설치되어 있는지 확인하고 없다면 설치를 진행한다.sudo yum install git..
0. Agent 내부 구성Jenkins Agent에 Docker를 설치하면, 파이프라인에서 동일한 Docker 이미지로 빌드와 테스트를 실행할 수 있어 환경 차이로 인한 문제를 줄일 수 있다. Agent 한 대가 Docker 호스트 역할을 하면 Java·Node·Python 등 여러 런타임을 각각의 컨테이너로 돌릴 수 있어, 에이전트마다 다른 툴을 깔 필요 없이 한 Agent로 여러 환경을 제공할 수 있으므로, Docker까지 함께 설치하는 것을 구상했다.1. AWS 인스턴스 생성Agent 또한 스펙은 chatGPT의 도움을 받았다.애플리케이션 및 OS 이미지(Amazon Machine Image)Amazon Linux 선택AMI : Amazon Linux 2023 kernel-6.1 AMI아키텍처 : ..
0. 시작하며맥북 로컬 환경에서 Docker로 Jenkins를 띄우고, Job을 만들어 빌드까지 수행해보는 것은 크게 어렵지 않았다. 기본적인 Job 구성과 빌드 흐름을 이해하는 데에는 충분한 경험이었다.하지만 돌아보니, 그 구조는 Controller와 실행 노드가 하나로 붙어 있는 built-in 방식이었다. 말 그대로 “Jenkins를 실행해본 것”에 가까웠지, 실제 운영과 비슷한 환경에서의 Jenkins를 경험했다고 보기는 한참 부족했다.현업에서는 보통 Controller와 Agent를 분리하고, 빌드는 별도의 노드(Agent 서버)에서 수행한다. 리소스를 분리하고, 확장성과 안정성을 고려한 구조다. 로컬 단일 노드 환경에서는 이런 부분을 체감하기 힘들었다.그래서 이번에는 AWS EC2 위에 Jen..
- Total
- Today
- Yesterday
- springboot
- springsecurity
- 스프링부트
- 오라클
- 자바스크립트
- 마리아디비
- java
- AWS
- 도커
- 파이썬
- oracle
- BeautifulSoup
- 스프링
- docker
- MongoDB
- Minikube
- mariadb
- 쿠버네티스
- 쿼리
- jenkins
- 톰캣
- nodejs
- k8s
- kubernetes
- JavaScript
- 젠킨스
- 크롤링
- Spring
- MySQL
- 스프링시큐리티
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |