Synology Gitlab에서 CI 사용해보기

Synology 2020.08.07 댓글 Plorence

jboxberger/synology-gitlab, GitLab 12.9.2-0055 버전을 사용 중입니다.

저는 이미 도메인 연결과 HTTPS를 사용하므로, 로컬보다는 URL을 사용해볼까 합니다.

URL과 토큰

먼저 Specific Runners 는 특정 저장소에 국한된 러너를 뜻합니다.
Shared Runners 는 따로 러너가 설정되지 않은 저장소에서 쓰입니다.

Shared Runners 의 경우 root 계정으로 로그인하고 Admin area > Overview > Runner에 보시면 URL과 토큰이 나옵니다.

500 에러가 발생하는 경우

Specific Runners 는 해당 저장소 > Settings > CI / CD > Runner에 나옵니다.

URL과 토큰은 반드시 필요하니 어디 메모해두세요.

SSH 접속

ssh -p 2244 아이디@url

Runner 컨테이너 생성

sudo docker run -d \
--name gitlab-runner1 \
--restart always \
--volume /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:alpine

--name 뒤에 문자열은 컨테이너 이름입니다.
여기선 설정하진 않았지만 러너의 옵션도 지정할 수 있습니다.

Runner 등록

sudo docker exec -it gitlab-runner1 bash

bash에 접속합니다.

gitlab-runner register -n \
--url "URL" \
--registration-token "토큰" \
--description "러너설명란" \
--executor docker \
--docker-image 기본이미지

기본 이미지의 경우 gitlab-ci.yml 에서 이미지를 지정하지 않은 경우 사용할 이미지입니다.
이 옵션은 --executor docker 일 때만 사용합니다.

공식 문서

확인하기

root 계정으로 로그인해서 Admin area > Overview > Runners에 등록되면 성공입니다.

실제로 써보기

gitlab-ci.yml 파일을 만든 후 작성합니다.

image: mcr.microsoft.com/dotnet/core/sdk:latest
stages:
  - test

test:
  stage: test
  script:
    - "dotnet test"

그리고 커밋하고 푸시해줘야 합니다.

그다음 저장소 > CI / CD에 들어가 Run Pipeline 을 클릭합니다.
이미 실패한 파이프라인이 있는 경우, 해당 Status 버튼을 클릭해도 됩니다.

브런치를 설정하고 gitlab-ci.yml 에 쓰일 변수들을 작성하면 되는데, 저는 없으니 Run Pipeline으로 실행하면 됩니다.

결과는 저장소 > CI / CD > Jobs > 보고 싶은 것의 Status 버튼을 클릭하면 됩니다.

댓글