Docker 컨테이너에서 CI/CD 잡 실행
Docker 컨테이너에서 CI/CD 잡을 실행하는 방법.
전용 CI/CD 빌드 서버나 로컬 머신에서 호스팅되는 Docker 컨테이너에서 CI/CD 잡을 실행할 수 있습니다. Docker 컨테이너에서 CI/CD 잡을 실행하려면 다음이 필요합니다: 러너를 등록하고 Docker 실행기 를 사용하도록 구성합니다. .gitlab-ci.yml 파일에서 CI/CD 잡을 실행할 컨테이너 이미지를 지정합니다. 선택 사항. MySQL 같은 다른 서비스를 컨테이너에서 실행합니다. .gitlab-ci.yml 파일에서 서비스 를 지정하여 이를 수행합니다. Docker 실행기를 사용하는 러너 등록 # Docker와 함께 GitLab Runner를 사용하려면 Docker 실행기를 사용하는 러너를 등록 해야 합니다. 다음 예시는 서비스를 제공하기 위한 임시 템플릿을 설정하는 방법을 보여줍니다: cat > /tmp/test-config.template.toml << EOF [[runners]] [runners.docker] [[runners.docker.services]] name = "postgres:latest" [[runners.docker.services]] name = "mysql:latest" EOF 그런 다음 이 템플릿을 사용하여 러너를 등록합니다: sudo gitlab-runner register \ --url "https://gitlab.example.com/" \ --token "$RUNNER_TOKEN" \ --description "docker-ruby:2.6" \ --executor "docker" \ --template-config /tmp/test-config.template.toml \ --docker-image ruby:3.3 등록된 러너는 ruby:2.6 Docker 이미지를 사용하고, 빌드 프로세스 중에 접근 가능한 두 서비스인 postgres:latest 와 mysql:latest 를 실행합니다. 이미지란 # image 키워드는 Docker 실행기가 CI/CD 잡을 실행하는 데 사용하는 Docker 이미지의 이름입니다. 기본적으로 실행기는 Docker Hub 에서 이미지를 가져옵니다. 그러나 gitlab-runner/config.toml 파일에서 레지스트리 위치를 구성할 수 있습니다. 예를 들어, 로컬 이미지를 사용하도록 Docker 풀 정책 을 설정할 수 있습니다. 이미지와 Docker Hub에 대한 자세한 내용은 Docker 개요 를 참조하세요. 이미지 요구 사항 # CI/CD 잡을 실행하는 데 사용되는 이미지에는 다음 애플리케이션이 설치되어 있어야 합니다: sh 또는 bash grep .gitlab-ci.yml 파일에서 image 정의 # 모든 잡에 사용되는 이미지와 런타임 중에 사용할 서비스 목록을 정의할 수 있습니다: default: image: ruby:2.6 services: - postgres:16.10 before_script: - bundle install test: script: - bundle exec rake spec 이미지 이름은 다음 형식 중
