반응형
- docker, vscode, git 설치는 따로 다루지 않았습니다
- Jenkins pipeline에서 docker와 k8s를 사용하기 위해, Jenkins가 올라 가있는 인스턴스에 도커와 k8s 설치되어있습니다. → Jenkins 컨테이너 올릴 때 도커, k8s 바이너리 파일 볼륨 매핑하여 Jenkins 컨테이너 안에서 명령어 사용 할 수 있도록 하였습니다.
- Jenkins 컨테이너 안에서 NCR login이 되어있습니다. (docker login ~~)
- Jenkins와 Gitlab은 각자의 인스턴스에 docker로 올라 가있습니다.
현재 구성은
VSCode에서 Gitlab에 소스코드 push →
gitlab 소스코드 업로드 →
jenkins에서 git 소스 변경 감지 →
파이프라인 작동 →
Jenkins 서버에서 소스코드 기반 도커이미지 생성 →
생성된 도커이미지 NCR에 PUSH →
Pod 적용 입니다.
Jenkins 서버 - 도커 설치, k8s 설치, 클러스터에 접근 가능한 상태
Gitlab 서버 - 도커 설치
서로 다른 인스턴스에 설치 진행하였습니다.
1. Gitlab 설치 및 기본 설정
1. 깃랩 컨테이너 올리기
docker run --detach \
--hostname gitlab.example.com \
--publish 1980:80 --publish 1922:22 --publish 19443:443 \
--name gitlab \
--restart always \
--volume $HOME/gitlab/config:/etc/gitlab \
--volume $HOME/gitlab/logs:/var/log/gitlab \
--volume $HOME/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
2. 깃랩 컨테이너 접속 및 초기 비밀번호 확인
cat /etc/gitlab/initial_root_password
3. 접속
http://<ip 주소>:1980
4. 새로운 User 생성 (생성 완료 후 새로운 ID로 접속 해주세요)
2. VScode↔Gitlab 연동 확인
vscode 설치 및 git 연동은 검색하시면 많이 나옵니다. 이 글에서는 이미 설치되어 있다는 가정하에 확인만 진행하겠습니다.
1. 테스트 파일 git push
2. gitlab 업로드 확인
3. Gitlab 설정 (Network, Webhook)
1. root 계정으로 접속 후 그림과 같이 이동
2. Allowed Request 체크 후 화이트리스트 작성
3. 본인 계정으로 돌아와서, 본인이 만든 레포지토리 클릭 후 Webhook
4. 기호에 맞게 설정. (여기서 사용하는 URL과 Secret token은 젠킨스 설정 부분에서 확인 가능합니다.)
5. Webhook TEST 진행
반응형
'IT > CI CD' 카테고리의 다른 글
[Jenkins+Gitlab CI/CD] (3) Gitlab Token 발급 및 Jenkins 등록 (0) | 2023.09.21 |
---|---|
[Jenkins+Gitlab CI/CD] (2) 젠킨스 설치 및 기본 설정 (0) | 2023.09.21 |
[Jenkins] AWS 설정 (S3, IAM, CodeDeploy) (0) | 2022.09.19 |
[Jenkins] CI/CD 구현 (3) (0) | 2022.09.01 |
[Jenkins] CI/CD 구현 (2) 자동 빌드 설정 및 테스트 (0) | 2022.09.01 |