728x90
반응형
# Gitlab-runner를 활용한 CI/CD 구성하기
1. 일단 Gitlab의 CI/CD/를 하기위해서는 runner를 등록 해야한다.
여기서 runner는 총 3가지의 형태가 있다.
shared runner : 모든 Gitlab 사용자들과 공유하는 runner
Group runner : 해당 그룹의 프로젝트에서 공유하는 runner
Specific runner : 특정 프로젝트에서만 동작하는 runner
여기서는 specific runner를 활용하여 테스트를 진행한다.
2. Gitlab-runner를 아래의 명령어를 통해 실행
- gitlab-runner Container 실행
docker run --detach \
--name gitlab-runner \
--restart always \
--volume /srv/gitlab-runner/config:/etc/gitlab-runner: \
--volume /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
- 결과는 아래와 같다.
$ docker run --detach \
> --name gitlab-runner \
> --restart always \
> --volume /srv/gitlab-runner/config:/etc/gitlab-runner: \
> --volume /var/run/docker.sock:/var/run/docker.sock \
> gitlab/gitlab-runner:latest
Unable to find image 'gitlab/gitlab-runner:latest' locally
latest: Pulling from gitlab/gitlab-runner
fb0b3276a519: Pull complete
90b6e83fab8a: Pull complete
dcd6fdef935d: Pull complete
Digest: sha256:43f0f8f9968d5ad04d46d960288cdc46e79f52de9e36823260f4f33c68b6a744
Status: Downloaded newer image for gitlab/gitlab-runner:latest
69fd26b44e46480a9c6e1ea181ede836f8b8e0058bef2d5db58ac2f08ee73fb1
- 생성 확인
$ docker ps | grep runner
or
$ sudo docker ps -a | grep gitlab-runner
69fd26b44e46 gitlab/gitlab-runner:latest "/usr/bin/dumb-init …" 48 seconds ago Up 47 seconds
- Gitlab runner 등록을 위해서 Gitlab project에서 URL과 토큰값을 확인한다.
- Gitlab 사이트에서
프로젝트 선택 → Setting → CICD → Runners → Expand → 아래의 캡쳐 화면처럼 url과 token값 확인
3. Gitlab과 Gitlab-runner 연동하기
- 도커 컨테이너로 접속하기
docker container exec -it gitlab-runner bash
- 위에서 확인한 url값과 토큰값을 입력하여 연동 수행 (대화식도 있는데, 명령어로 설정하는게 더 편함)
gitlab-runner register -n \
--url https://<Your Gitlab URL>/ \
--registration-token <Your Gitlab Token> \
--description gitlab-runner \
--executor docker \
--docker-image docker:latest \
--docker-volumes /var/run/docker.sock:/var/run/docker.sock
- 정상등록 완료 (cloud9의 보안그룹을 all로 열어줘야 함_이건 나중에 확인 해야함)
gitlab-runner register -n --url http://{ip}:8000/ --registration-token {token_value} --description gitlab-runner --executor docker --docker-image docker:latest --docker-volumes /var/run/docker.sock:/var/run/docker.sock
Runtime platform arch=amd64 os=linux pid=51 revision=0d4137b8 version=15.5.0
Running in system-mode.
Registering runner... succeeded runner={valne}
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
Configuration (with the authentication token) was saved in "/etc/gitlab-runner/config.toml"
- Gitlab에서 확인
1개의 runner가 세팅된 것 확인
- 끝 -
728x90
반응형
'PrivateCloud > CI CD (지속적인 통합, 배포 파이프라인 구축)' 카테고리의 다른 글
2. (CI/CD) Argocd를 활용한 배포 with Github, Jenkins (0) | 2022.11.17 |
---|---|
1. (CI/CD) Jenkins과 Harbor 연동 및 테스트 이미지 업로드 하기 (0) | 2022.11.14 |
On-premise Jenkins 설치 및 Gitlab 연동하기 (1) | 2022.11.14 |