GitLab Runner 설치하기 (FreeBSD)

Tier: Free, Premium, Ultimate
Offering: GitLab.com, Self-managed
note
FreeBSD 버전은 bleeding edge 릴리즈로도 제공됩니다.
GitLab Runner와 관련된 일반적인 문제를 설명하는 FAQ 섹션을 반드시 읽어보세요.
caution
GitLab Runner 10 이전 버전을 사용 중이거나 업그레이드하고 있는 경우, 새 버전으로 업그레이드하는 방법을 읽어보세요.

GitLab Runner 설치하기

FreeBSD에서 GitLab Runner를 설치하고 구성하는 단계는 다음과 같습니다:

  1. gitlab-runner 사용자 및 그룹 생성:

    sudo pw group add -n gitlab-runner  
    sudo pw user add -n gitlab-runner -g gitlab-runner -s /usr/local/bin/bash  
    sudo mkdir /home/gitlab-runner  
    sudo chown gitlab-runner:gitlab-runner /home/gitlab-runner  
    
  2. 시스템에 맞는 바이너리 다운로드:

    # amd64 용
    sudo fetch -o /usr/local/bin/gitlab-runner https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-freebsd-amd64  
    
    # i386 용
    sudo fetch -o /usr/local/bin/gitlab-runner https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-freebsd-386  
    

    사용 가능한 모든 버전의 바이너리를 다운로드할 수 있으며, Bleeding Edge - 다른 태그 릴리즈 다운로드에서 설명되어 있습니다.

  3. 실행 권한 부여:

    sudo chmod +x /usr/local/bin/gitlab-runner  
    
  4. 올바른 권한으로 빈 로그 파일 생성:

    sudo touch /var/log/gitlab_runner.log && sudo chown gitlab-runner:gitlab-runner /var/log/gitlab_runner.log  
    
  5. rc.d 디렉터리를 존재하지 않는 경우 생성:

    mkdir -p /usr/local/etc/rc.d  
    
  6. rc.d 안에 gitlab_runner 스크립트 생성:

    Bash 사용자는 다음과 같이 할 수 있습니다:

    sudo bash -c 'cat > /usr/local/etc/rc.d/gitlab_runner' << "EOF"  
    #!/bin/sh  
    # PROVIDE: gitlab_runner  
    # REQUIRE: DAEMON NETWORKING  
    # BEFORE:  
    # KEYWORD:  
    
    . /etc/rc.subr  
    
    name="gitlab_runner"  
    rcvar="gitlab_runner_enable"  
    
    user="gitlab-runner"  
    user_home="/home/gitlab-runner"  
    command="/usr/local/bin/gitlab-runner"  
    command_args="run"  
    pidfile="/var/run/${name}.pid"  
    
    start_cmd="gitlab_runner_start"  
    
    gitlab_runner_start()  
    {  
       export USER=${user}  
       export HOME=${user_home}  
       if checkyesno ${rcvar}; then  
          cd ${user_home}  
          /usr/sbin/daemon -u ${user} -p ${pidfile} ${command} ${command_args} > /var/log/gitlab_runner.log 2>&1  
       fi  
    }  
    
    load_rc_config $name  
    run_rc_command $1  
    EOF  
    

    Bash를 사용하지 않는 경우, /usr/local/etc/rc.d/gitlab_runner라는 파일을 만들고 다음 내용을 포함하세요:

    #!/bin/sh  
    # PROVIDE: gitlab_runner  
    # REQUIRE: DAEMON NETWORKING  
    # BEFORE:  
    # KEYWORD:  
    
    . /etc/rc.subr  
    
    name="gitlab_runner"  
    rcvar="gitlab_runner_enable"  
    
    user="gitlab-runner"  
    user_home="/home/gitlab-runner"  
    command="/usr/local/bin/gitlab-runner"  
    command_args="run"  
    pidfile="/var/run/${name}.pid"  
    
    start_cmd="gitlab_runner_start"  
    
    gitlab_runner_start()  
    {  
       export USER=${user}  
       export HOME=${user_home}  
       if checkyesno ${rcvar}; then  
          cd ${user_home}  
          /usr/sbin/daemon -u ${user} -p ${pidfile} ${command} ${command_args} > /var/log/gitlab_runner.log 2>&1  
       fi  
    }  
    
    load_rc_config $name  
    run_rc_command $1  
    
  7. gitlab_runner 스크립트를 실행 가능하게 만들기:

    sudo chmod +x /usr/local/etc/rc.d/gitlab_runner  
    
  8. 러너 등록하기

  9. gitlab-runner 서비스를 활성화하고 시작하기:

    sudo sysrc gitlab_runner_enable=YES  
    sudo service gitlab_runner start  
    

    reboot 후 gitlab-runner 서비스의 자동 시작을 원하지 않는 경우, 다음을 사용합니다:

    sudo service gitlab_runner onestart  
    

GitLab Runner 10으로 업그레이드하기

GitLab Runner를 10.0 이전 버전에서 업그레이드하려면:

  1. GitLab Runner 중지:

    sudo service gitlab_runner stop
    
  2. 선택적으로, 이전 버전의 GitLab Runner를 보존하십시오:

    sudo mv /usr/local/bin/gitlab-ci-multi-runner{,.$(/usr/local/bin/gitlab-ci-multi-runner --version| grep Version | cut -d ':' -f 2 | sed 's/ //g')}
    
  3. 새로운 GitLab Runner를 다운로드하고 실행 가능하게 만드세요:

    # amd64용
    sudo fetch -o /usr/local/bin/gitlab-runner https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-freebsd-amd64
    
    # i386용
    sudo fetch -o /usr/local/bin/gitlab-runner https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-freebsd-386
    
    sudo chmod +x /usr/local/bin/gitlab-runner
    
  4. /usr/local/etc/rc.d/gitlab_runner를 편집하고 다음을 변경하세요:

    command="/usr/local/bin/gitlab-ci-multi-runner run"
    

    이렇게:

    command="/usr/local/bin/gitlab-runner run"
    
  5. GitLab Runner 시작:

    sudo service gitlab_runner start
    
  6. 모든 것이 올바르게 작동하는지 확인한 후, 이전 이진 파일을 제거할 수 있습니다:

    sudo rm /usr/local/bin/gitlab-ci-multi-runner.*