GitHub × Azure Pipelines에서 Dockerized Java 앱을 Azure에 배포해 보세요.

최근 Java에 힘을 쓰는 경향이 있는 Microsoft입니다만, Dockerized Java 앱을 Azure에 배포하는 것이 얼마나 쉬운지 시험해 보고 싶습니다.

소스 코드



이번에 사용하는 Java 애플리케이션이지만 Tomcat 앱을 사용합니다. 아래 GitHub에 코드를 배치하고 있으므로 활용하십시오.
htps : // 기주 b. 코 m / 코미 야사 / m 또는 t CD mp ぇ

Azure Pipelines에서 CI 만들기



먼저 Azure Pipelines에서 CI를 만들어 보겠습니다. Azure DevOps의 Pipelines에 액세스하여 New Pipeline에서 새 Pipeline을 만듭니다.

YAML 기반으로 만드는 것이 최근의 주류이지만 모처럼 Azure Pipelines를 사용하기 때문에 Classic Editor에서 GUI 기반으로 만들고 싶습니다. 이번에 추가할 작업은 다음 5가지입니다. 참고까지 설정한 파라미터도 기재합니다.
  • Maven htps : // / cs. 미 c 로소 ft. 코 m / 그럼 jp / 아즈레 / ゔぉ ps / 피페네 s / 타 sks / 부이 ld / 뭐?ゔ ぃ w = 아즈레에서 ゔ ぉ ps

  • Copy files htps : // / cs. 미 c 로소 ft. 코 m / 그럼 jp / 아즈레 / ゔぉps / 피페네 s / 타 sks / 우치 ty / 코 py 후우 s?ゔ ぃ w = 아즈레 - ゔ ぉ ps & bs = 또는 ml

  • Publish build artifacts htps : // / cs. 미 c 로소 ft. 코 m / 자 jp / 아즈레 / ゔぉ ps / 피페네 s / 타 sks / 우치 ty / 푸 b ぃ sh 부드러운 ld 아르 치후 cts?ゔ ぃ w = 아즈레에서 ゔ ぉ ps

  • Docker (build 및 push) htps : // / cs. 미 c 로소 ft. 코 m / 그럼 jp / 아즈레 / ゔぉ ps / 피페네 s / 타 sks / 부이 ld / 도 c 케 r?ゔ ぃ w = 아즈레에서 ゔ ぉ ps


    설정이 완료되면 Queue를 실행합니다.

  • ■주의 사항
    이 때 기본 설정으로 Host Agent 가 VS2019 로 되어 있는 경우가 있습니다만 이번은 Dockerized Java 의 빌드이므로 Ubuntsu 16 로 설정되어 있는지 확인해 주세요!


    Releases Pipeline 만들기



    먼저 Continuous deployment triggerEnable 로 설정합니다.

    그런 다음 두 개의 Tasks를 설정합니다. ※ 미리 Azure Database for MySQL 과 Azure WebApp 를 배포하고 나서 실시합니다.
    - Azure Database for MySQL deployment htps : // / cs. 미 c 로소 ft. 이 m / 그럼 jp / 아즈레 / ゔぉ ps / 피페네 s / 타 sks /에서 pぉy / 아즈레 - mysql로 ​​pぉy 면 t?ゔ ぃ w = 아즈레에서 ゔ ぉ ps

    - Azure App Service deploy htps : // / cs. 미 c 로소 ft. 이 m / 그럼 - jp / 아즈레 / 아 p-세 r ゔ ぃ 세 /에서 p ぉ y - 안녕하세요 s - p ぉ y 면 t? bs = 기수 b


    코드를 변경하여 CI/CD를 사용할 수 있는지 시도해 보세요.



    GitHub의 Master 브랜치에서 Clone한 Java 앱의 제목을 Visual Studio Code에서 조금 변경하여 GitHub로 Push해 봅니다.

    변경한 내용이 먼저 GitHub에 반영됩니다.

    Azure Pipelines를 검토하면 자동으로 빌드 작업이 시작됩니다.


    Azure Container Registry에도 변경 내용이 반영되어 있음을 Azure Portal에서 확인할 수 있습니다.

    빌드 더스크가 종료되고 무사히 Artifact가 작성되면 Release Pipelines가 자동으로 움직입니다. 이제 자동으로 App Serviecs/Azure Database for MySQL에 대해 만든 Dockerized Java 앱이 배포되었습니다. 매우 간단합니다!

    실제로 응용 프로그램에 액세스하면 변경 사항이 반영되는 것을 볼 수 있습니다.


    이번에 한 일을 그림으로 정리해 보자.



    이번에는 GitHub × Azure Pipelines를 사용하여 Dockerized Java 앱을 Azure에 배포했습니다. Azure Container Registry나 App Services 등 여러가지 사용했으므로 그림에 정리해 보겠습니다.

    매우 쉽게 Dockerized Java 앱의 CI/CD를 만들 수 있었습니다. 이번에는 Azure Container Registry에서 docker 이미지를 관리했지만 Docker Hub로 만들 수도 있습니다. Classic Editor 를 사용하면 GUI 베이스로 Java 의 파이프라인도 작성할 수 있으므로 재차 편리하다고 생각했습니다!
    향후 마이크로소프트는 Java에도 힘을 넣어 갈 것이므로, Azure DevOps/GitHub를 축으로 Java의 개발 환경의 업데이트라고 하는 관점에서도 정보를 캐치 업하겠습니다.

    참고 정보



    Azure DevOps Lab : Deploying a Dockerized Java app to Azure Web App for Containers
    htps : // 어긋남으로 ゔぉ psぁ bs. 이 m/ぁbs/vs ぇx 텐 d/도 c케 r잖아/

    좋은 웹페이지 즐겨찾기