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
이는 actions/checkout@v2 작업을 사용하여 먼저 마스터로 푸시 된 현재 저장소를 체크 아웃하는 방식으로 작동합니다. 다음 단계에서는 docker build 및 push action docke/build-push-action@v1을 사용합니다. 도커 허브 사용자 이름, 비밀번호, 리포지토리 및 태그의 4 가지 매개 변수가 필요합니다.
위의 코드에서 username과 password에 secrets 매개 변수를 사용하고 있음을 알 수 있습니다.
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
Github에서 저장소에 Secrets을 추가하려면 Settings -> Secrets을 선택한 다음 사용자 이름과 비밀번호에 대한 새 Secrets을 작성하십시오.
이미지를 빌드하기 위해 저장소에 프로젝트 루트에 Dockerfile이 있는지 확인합니다.
이제 이 파일을 리포지토리에 커밋하고 마스터로 푸시하면 Github에서 도커 이미지를 도커 허브로 푸시합니다.
'SW > DevOps' 카테고리의 다른 글
DevOps를 위한 생성형 인공지능: 실용적 관점 (1) | 2023.06.30 |
---|---|
DevOps : Docker 환경 정리 : 방법, 명령어 (0) | 2020.08.12 |
DevOps : MacOS에서 도커 성능 향상 방법 (0) | 2020.08.10 |
DevOps : Docker의 모든 컨테이너 나열하기 : 명령어 (0) | 2020.08.09 |
K-MOOC 강좌 후기 : 오픈소스를 활용한 DevOps 환경 이해 (0) | 2019.12.21 |