Azure Static Web Apps에 Jekyll 사이트 배포

이 문서에서는 Azure Static Web AppsJekyll 웹 애플리케이션을 만들고 배포하는 방법을 보여줍니다.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • Jekyll 웹 사이트 만들기
  • Azure Static Web Apps 리소스 설정
  • Azure에 Jekyll 앱 배포

Azure를 구독하고 있지 않다면 시작하기 전에 Azure 체험 계정을 만듭니다.

사전 요구 사항

Jekyll 앱 만들기

JEkyll CLI(명령줄 인터페이스)를 사용하여 Jekyll 앱을 만듭니다.

  1. 터미널에서 Jekyll CLI를 실행하여 새 앱을 만듭니다.

    jekyll new static-app
    
  2. 새로 만든 앱으로 이동합니다.

    cd static-app
    
  3. 새 Git 리포지토리를 초기화합니다.

     git init
    
  4. 변경 내용을 커밋합니다.

    git add -A
    git commit -m "initial commit"
    

GitHub에 애플리케이션 푸시

Azure Static Web Apps는 GitHub를 사용하여 웹 사이트를 게시합니다. 다음 단계에서는 GitHub 리포지토리를 만드는 방법을 보여줍니다.

  1. 명명된 jekyll-azure-static에서 https://github.com/new 빈 GitHub 리포지토리(추가 정보 만들기 안 함)를 만듭니다.

  2. 로컬 리포지토리에 GitHub 리포지토리를 원격으로 추가합니다. 다음 명령에서 자리 표시자 대신 <YOUR_USER_NAME> GitHub 사용자 이름을 추가해야 합니다.

    git remote add origin https://github.com/<YOUR_USER_NAME>/jekyll-azure-static
    
  3. 로컬 리포지토리를 GitHub로 푸시합니다.

    git push --set-upstream origin main
    

    참고 항목

    Git 분기의 이름은 main. 이 명령에서 올바른 값으로 바꿉 main 다.

웹앱 배포

다음 단계에서는 새 정적 사이트 앱을 만들고 프로덕션 환경에 배포하는 방법을 보여 줍니다.

애플리케이션 만들기

  1. Azure Portal로 이동

  2. 리소스 만들기 선택

  3. Static Web Apps를 검색합니다.

  4. Static Web Apps 선택

  5. 만들기를 선택합니다.

  6. 기본 탭에서 다음 값을 입력합니다.

    속성
    구독 Azure 구독 이름입니다.
    리소스 그룹 jekyll-static-app
    이름 jekyll-static-app
    플랜 유형 무료
    Azure Functions API 및 스테이징 환경을 위한 영역 가장 가까운 지역을 선택합니다.
    Source GitHub
  7. GitHub로 로그인을 선택하고 GitHub로 인증합니다.

  8. 다음 GitHub 값을 입력합니다.

    속성
    조직 원하는 GitHub 조직을 선택합니다.
    리포지토리 jekyll-static-app을 선택합니다.
    Branch 기본을 선택합니다.

    참고 항목

    리포지토리가 표시되지 않는 경우 GitHub에서 Azure Static Web Apps에 권한을 부여해야 할 수 있습니다. GitHub 리포지토리로 이동하고 설정 애플리케이션 권한 OAuth 앱 이동하여 Azure Static Web Apps를 선택한 다음, 권한 부여를 선택합니다.>> 조직 리포지토리의 경우 사용 권한을 부여하려면 조직의 소유자여야 합니다.

  9. 빌드 세부 정보 섹션의 빌드 사전 설정 드롭다운에서 사용자 지정을 선택하고 기본값을 유지합니다.

  10. 앱 위치 상자에 ./를 입력합니다.

  11. Api 위치 상자를 비워 둡니다.

  12. 출력 위치 상자에 _site 입력합니다.

검토 후 만들기

  1. 검토 + 만들기를 선택하여 세부 정보가 모두 올바른지 확인합니다.

  2. 만들기를 선택하여 App Service 정적 웹앱 만들기를 시작하고 배포를 위한 GitHub Actions를 프로비전합니다.

  3. 배포가 완료되면 리소스로 이동을 선택합니다.

  4. 리소스 화면에서 URL 링크를 선택하여 배포된 애플리케이션을 엽니다. GitHub Actions가 완료되기까지 1~2분 정도 기다려야 할 수 있습니다.

    Deployed application

사용자 지정 Jekyll 설정

정적 웹앱을 생성하면 애플리케이션에 대한 게시 구성 설정이 포함된 워크플로 파일이 생성됩니다.

같은 JEKYLL_ENV환경 변수를 구성하려면 워크플로의 Azure Static Web Apps GitHub Actions에 섹션을 추가 env 합니다.

- name: Build And Deploy
   id: builddeploy
   uses: Azure/static-web-apps-deploy@v1
   with:
      azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN }}
      repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for GitHub integrations (i.e. PR comments)
      action: "upload"
      ###### Repository/Build Configurations - These values can be configured to match you app requirements. ######
      # For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
      app_location: "/" # App source code path
      api_location: "" # Api source code path - optional
      output_location: "_site" # Built app content directory - optional
      ###### End of Repository/Build Configurations ######
   env:
      JEKYLL_ENV: production

리소스 정리

이 애플리케이션을 계속 사용하지 않을 경우 다음 단계를 통해 Azure Static Web App 리소스를 삭제할 수 있습니다.

  1. Azure Portal을 엽니다.
  2. 위쪽 검색 창에서 이전에 제공한 이름으로 애플리케이션을 검색합니다.
  3. 앱 클릭
  4. 삭제 단추를 클릭합니다.
  5. [예]를 클릭하여 삭제 작업을 확인합니다.

다음 단계