Snowflake CLI 을 사용하여 Streamlit 앱 만들기 및 배포하기

이 항목에서는 Snowflake CLI 를 사용한 Streamlit in Snowflake 작업에 대해 설명합니다.

Snowflake CLI 란 무엇입니까?

Snowflake CLI 는 SQL 작업 외에도 개발자 중심의 워크로드를 위해 명시적으로 설계된 오픈 소스 명령줄 도구입니다. 현재 로컬 IDE 개발 흐름과 Git 기반 지속적 통합 및 배포(CI/CD) 협업 워크플로를 사용하는 Streamlit 개발자를 위해 Snowflake CLI 는 현재 개발 흐름에 Streamlit in Snowflake 를 통합할 수 있는 익숙한 도구를 제공합니다.

자세한 내용은 Snowflake CLI 섹션을 참조하십시오.

Snowflake CLI 를 사용하여 Streamlit 앱을 생성하기 전:

개발자 가이드

가이드

설명

Streamlit 앱 만들기

Snowflake CLI 를 사용하여 Streamlit 앱을 생성하는 방법에 대해 알아볼 수 있습니다.

Streamlit 앱 배포하기

Snowflake CLI 를 사용하여 Streamlit 앱을 배포하는 방법에 대해 알아볼 수 있습니다.

Streamlit 앱의 URL 검색하기

Streamlit 앱의 URL 검색에 대해 알아볼 수 있습니다.

Streamlit 앱 공유하기

Snowflake CLI 를 사용하여 다른 역할과 Streamlit 앱을 공유하는 방법에 대해 알아볼 수 있습니다.

Streamlit 앱 관리하기

Snowflake CLI 를 사용하여 Streamlit 앱을 관리하는 방법에 대해 알아볼 수 있습니다.

Snowflake CLI 및 GitHub 작업 워크플로를 사용하여 CI/CD 파이프라인 만들기

다음 섹션에서는 Snowflake CLI 및 GitHub 작업 워크플로를 사용하여 Snowflake에서 Streamlit 앱을 배포하는 방법에 대해 설명합니다. 다른 버전 제어 공급자에도 비슷한 액세스 방식을 사용할 수 있습니다.

전제 조건

Snowflake CLI 및 GitHub 작업 워크플로를 사용하여 Streamlit 앱을 배포하기 전에 다음 사항을 확인합니다.

  • Streamlit in Snowflake 사용을 위한 필수 전제 조건 을 충족합니다.

  • 파일을 추가할 GitHub 리포지토리가 있습니다.

예: Snowflake CLI 를 사용하여 GitHub 작업 워크플로 만들기

Snowflake CLI 를 사용하여 GitHub 작업 워크플로를 생성하려면:

  1. 리포지토리에서 .github/workflows 디렉터리에 main.yml 워크플로 파일을 생성합니다.

  2. GitHub 작업 워크플로에서 사용할 SNOWCLI_PW 시크릿을 생성합니다.

  3. 다음을 main.yml 파일에 복사합니다.

    # Name the GitHub Action
    name: Deploy via Snowflake CLI
    
    on:
    push:
        branches:
        - main
    
    env:
    PYTHON_VERSION: '3.8'
    
    jobs:
    build-and-deploy:
        runs-on: ubuntu-latest
        environment: dev
        steps:
        # Checks out your repository under $GITHUB_WORKSPACE, so your workflow can access it
        - name: 'Checkout GitHub Action'
        uses: actions/checkout@v3
    
        - name: Install Python
        uses: actions/setup-python@v4
        with:
            python-version: ${{ env.PYTHON_VERSION }}
    
        - name: 'Install Snowflake CLI'
        shell: bash
        run: |
            python -m pip install --upgrade pip
            pip install snowflake-cli-labs
    
        - name: 'Create config'
        shell: bash
        env:
            SNOWFLAKE_PASSWORD: ${{ secrets.SNOWCLI_PW }}
        run: |
            mkdir -p ~/.snowflake
            cp config.toml ~/.snowflake/config.toml
            echo "password = \"$SNOWFLAKE_PASSWORD\"" >> ~/.snowflake/config.toml
            chmod 0600 ~/.snowflake/config.toml
    
        - name: 'Deploy the Streamlit app'
        shell: bash
        run: |
            snow streamlit deploy --replace
    
    Copy
  4. 워크플로를 실행하려면 변경 사항을 리포지토리에 커밋하고 푸시합니다.

자세한 내용은 GitHub 작업 설명서 를 참조하십시오.