Skip to main content

컨테이너에서 작업 실행

컨테이너를 사용하여 작업의 단계를 실행합니다.

데이터 재사용 가능.작업.엔터프라이즈-깃허브-호스티드-러너 %}

개요

Dockerfile 명령 및 재정의

Dockerfile에는 Docker 컨테이너의 콘텐츠 및 시작 동작을 정의하는 명령과 인수가 포함되어 있습니다. Docker에서 지원하는 명령에 대한 자세한 내용은 Docker 설명서의 Dockerfile 참조를 참조하세요.

일부 Docker 명령은 GitHub Actions와 상호작용을 하며 작업의 메타데이터 파일은 일부 Docker 명령을 재정의할 수 있습니다. 예기치 않은 동작을 방지하기 위해 Dockerfile이 GitHub Actions와 상호 작용하는 방법을 잘 알고 있어야 합니다.

참조 정보는 GitHub Actions에 대한 Dockerfile 지원을(를) 참조하세요.

컨테이너 이미지 정의

컨테이너 이미지에서 작업 실행하기 섹션

컨테이너 레지스트리에 대한 자격 증명 정의

이미지의 컨테이너 레지스트리에서 이미지를 끌어오기 위해 인증이 필요한 경우 jobs.<job_id>.container.credentials를 사용하여 usernamepasswordmap을 설정할 수 있습니다. 자격 증명은 docker login 명령에 제공하는 것과 동일한 값입니다.

예: 컨테이너 레지스트리에 대한 자격 증명 정의

container:
  image: ghcr.io/owner/image
  credentials:
     username: ${{ github.actor }}
     password: ${{ secrets.github_token }}

컨테이너를 통해 환경 변수 사용

jobs.<job_id>.container.env를 사용하여 컨테이너에서 환경 변수의 map을 설정합니다.

컨테이너에 네트워크 포트 노출

데이터 재사용 가능한 작업.직무.섹션-컨테이너 작업 실행-포트 %}

컨테이너에 볼륨 탑재

jobs.<job_id>.container.volumes를 사용하여 서비스 컨테이너에서 사용할 볼륨의 array를 설정합니다. 볼륨을 사용하여 서비스 또는 작업의 여러 단계 간에 데이터를 공유할 수 있습니다. 명명된 Docker 볼륨, 익명 Docker 볼륨 또는 호스트의 바인딩 탑재를 지정할 수 있습니다.

볼륨을 지정하려면 원본 및 대상 경로를 지정합니다.

<source>:<destinationPath>입니다.

<source>는 호스트 컴퓨터의 볼륨 이름 또는 절대 경로이며 <destinationPath>는 컨테이너의 절대 경로입니다.

예제: 컨테이너에 볼륨 탑재

volumes:
  - my_docker_volume:/volume_mount
  - /data/my_data
  - /source/directory:/destination/directory

컨테이너 리소스 옵션 설정