공부/Git

[Gitlab] gitlab runner 생성하기

작은소행성 2021. 11. 2. 16:54

gitlab Runner를 사용해 빌드 및 배포를 진행하려 했다.

 

 

gitlab Runner 설치 및 다운로드

 

설치 메뉴얼 (공식홈페이지)

https://docs.gitlab.com/runner/install/linux-manually.html

#download
sudo curl -L --output /usr/local/bin/gitlab-runner "https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64"


#실행권한부여
sudo chmod +x /usr/local/bin/gitlab-runner


#gitlabrunner로 실행

sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

#서비스 생성 
gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner


gitlab-runner start

gitlab-runner register

 

 

 

gitlab Runner Docker에 설치

 docker run -d --name gitlab-runner --restart always \
     -v /srv/gitlab-runner/config:/etc/gitlab-runner \
     -v /var/run/docker.sock:/var/run/docker.sock \
     gitlab/gitlab-runner:latest

 

 

docker exec -it gitlab-runner bash

 

ip 와 token 값을 입력해주면 된다.

gitlab-runner register -n --url http://<OP> \
--registration-token <TOKEN> \
--description gitlab-runner \
--executor docker \
--docker-image docker:latest \
--docker-volumes /var/run/docker.sock:/var/run/docker.sock

 

 

 

 

 

gitlab Runner 등록

 

runner에 관한 URL 과 token 정보는 

Settings -> CI/CD -> Runners -> 왼뽁부분에 Specific Runners 에서 확인할 수 있다.

 

 

 

깃랩 주소 넣기

Enter the GitLab instance URL (for example, https://gitlab.com/):
#주소입력
Enter the registration token:
# 토큰입력
Enter a description for the runner:
#설명입력
Enter tags for the runner (comma-separated):
#tag에 따른 실행러너가 달라짐
Registering runner... succeeded                     runner=de-Dwbeh
#tag에서 엔터 누르면 나오는 결과내용
Enter the default Docker image (for example, ruby:2.6):
# runner 실행 형식으로 어떤 실행형식이냐에 따라 입력 정보가 다름
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

 

 

gitlab Runner 사용하기

 

러너가 생성이되면 private로 되어있어서 수정 이모티콘을 눌러 상세페이지로 간다. 

 

Run untagged jobs : 해당 브랜치의 tag가 없어도 실행할지 여부와 해당 브랜치를 여러 러너가 실행하는 것이 아니라면 체크

 

Lockk to current project : runner 잠금해제를 해야 프로젝트 ci/cd에 할당 가능

 

 

 

 

 

 

반응형