반응형
이전에 Github 작업을 사용하여 마스터로 병합할 때, 응용 프로그램에 대한 PHPUnit 테스트 방법에 대해 조사해보았습니다.
테스트가 성공하면 다음 단계는 도커 이미지를 작성하여 리포지토리에 푸시하는 것입니다.
이렇게 하려면 새 워크플로 파일을 생성해야 합니다. 이 파일은 테스트가 성공한 후 실행되어 도커 이미지를 저장소로 푸시해야 합니다.
먼저 워크플로 폴더 .github/workflows/docker.yml에 새 파일을 만들고 해당 파일에 다음 파일을 붙여넣습니다.
name: Docker
on:
push:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Checkout GitHub Action'
uses: actions/checkout@v2
- name: Build and push docker
uses: docker/build-push-action@v1
with:
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
repository: DOCKER_REPOSITORY
tags: latest
이 작업은 먼저 master에 푸시된 상태에서 actions/checkout@v2 액션을 사용하여 현재 리포지토리를 체크아웃하는 방식으로 작동합니다.
다음 단계에서는 도커 빌드 및 푸시 작업 docker/build-push-action@v1를 사용합니다. 이렇게 하려면 도커 허브 사용자 이름, 암호, 리포지토리 및 태그 4개의 매개 변수가 필요합니다.
위의 코드에서 사용자 이름 및 암호에 암호 매개 변수를 사용하고 있음을 알 수 있습니다.
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
Github의 리포지토리에 암호를 추가하려면 Settings -> Secrets를 선택한 다음 사용자 이름과 암호에 대한 새 암호를 만듭니다.
리포지토리에 이미지를 빌드하기 위한 프로젝트 루트에 도커 파일이 있는지 확인합니다.
이제 이 파일을 리포지토리에 커밋하고 마스터에 푸시하면 Github가 도커 허브에 푸시 도커 이미지를 작성합니다.
반응형
'SW > Git' 카테고리의 다른 글
Git : Push 전에 PHPUnit 테스트를 자동으로 실행 방법 : 예제, 구현 (0) | 2020.07.13 |
---|---|
Git : Push를 사용하여 코드 배포 방법 : 예제, 구현 (0) | 2020.07.12 |
git : Git Repository의 URL을 변경하기 : 명령어, 예제 (0) | 2020.07.10 |
제트브레인 : .idea : 역할, git 제외 방법 (0) | 2019.10.26 |
git : cherry-pick 개념, 사용법 (0) | 2019.10.12 |