Criar o app Streamlit¶
Este tópico descreve como implantar um app Streamlit in Snowflake com base no código do app Streamlit existente. Se você é iniciante no Streamlit in Snowflake e deseja experimentar um app inicial primeiro, consulte Introdução às Streamlit in Snowflake.
Antes de começar:
Certifique-se de que você atenda aos pré-requisitos.
Escolha um ambiente de tempo de execução para seu app (contêiner ou warehouse).
Prepare as dependências em um arquivo
requirements.txt,pyproject.tomlouenvironment.yml.Revise a organização do arquivo dos arquivos de origem do seu app.
Implantar o código do app¶
Se você já tem um app Streamlit em sua máquina local ou em uma área de preparação do Snowflake, use um dos seguintes métodos para criar um objeto STREAMLIT de seus arquivos de origem.
Faça login no Snowsight.
No menu de navegação, selecione Projects » Streamlit.
Selecione + Streamlit App.
Digite um nome para seu aplicativo.
No menu suspenso App location, selecione o banco de dados e o esquema do seu aplicativo.
Configure o tempo de execução do seu app:
Para criar um app de tempo de execução de contêiner, faça as seguintes seleções:
Selecione Run on container.
Selecione um pool de computação para executar seu app.
Selecionar um warehouse de consulta para executar as consultas do seu aplicativo.
Para criar um app de tempo de execução do warehouse, faça as seguintes seleções:
Selecione Run on warehouse.
Selecione um warehouse para executar seu app.
Selecione Create.
No editor, substitua o código inicial pelo próprio código do seu app. Você pode colar o código diretamente ou carregar arquivos:
Para carregar arquivos, selecione + (Adicionar) » Upload file, escolha os arquivos e selecione Upload.
Para criar arquivos adicionais (como
pyproject.toml), selecione + (Adicionar) » Create new file.
Selecione Run.
Carregue os arquivos do app em uma área de preparação nomeada:
Você também pode carregar arquivos pelo Snowsight conforme descrito em Preparação de arquivos usando o Snowsight.
Crie o objeto STREAMLIT de seus arquivos preparados:
Para criar um app de tempo de execução de contêiner, execute o seguinte comando:
Para criar um app de tempo de execução do warehouse, omita os parâmetros RUNTIME_NAME e COMPUTE_POOL:
Envie seu código para a versão ativa:
Você deve executar este comando para que usuários que têm apenas o privilégio USAGE no objeto Streamlit possam visualizá-lo.
Para obter a referência completa dos parâmetros, consulte CREATE STREAMLIT.
Nota
É necessário o Snowflake CLI versão 3.14.0 ou posterior. A versão 3.14+ utiliza a moderna sintaxe CREATE STREAMLIT por padrão.
No diretório do seu projeto, crie um arquivo
snowflake.ymljunto com o código do seu app.Para criar um app de tempo de execução de contêiner, use a seguinte configuração:
Para criar um app de tempo de execução de warehouse, omita
compute_pooleruntime_name:Liste todos os arquivos que seu app precisa na seção
artifacts.Implante o app:
Para obter mais informações, consulte os guias Criação de um aplicativo Streamlit e Implementação de um aplicativo Streamlit.
Visualização de um aplicativo Streamlit¶
Para obter informações sobre os privilégios necessários para visualizar um aplicativo Streamlit, consulte Privilégios necessários para visualizar um aplicativo Streamlit.
Faça login no Snowsight.
No menu de navegação, selecione Projects » Streamlit.
Selecione o aplicativo Streamlit que deseja visualizar.
se você estiver visualizando um app Streamlit com várias páginas, selecione uma guia para visualizar páginas adicionais.
Para exibir informações sobre um objeto STREAMLIT:
Para visualizar o app em um navegador, faça login no Snowsight e, no menu de navegação, selecione Projects » Streamlit e o app.
Para obter o URL do app implantado:
Configurar CI/CD com GitHub Actions¶
Você pode implantar apps Streamlit in Snowflake automaticamente de um repositório Git usando a Snowflake CLI e o GitHub Actions. Você pode usar uma abordagem semelhante com outros provedores de CI/CD.
Pré-requisitos¶
Um repositório GitHub contendo os arquivos do app Streamlit e o
snowflake.yml.Um segredo
SNOWCLI_PWdefinido nas configurações do repositório GitHub.
Exemplo de fluxo de trabalho¶
Crie um arquivo .github/workflows/deploy.yml em seu repositório:
Confirme e envie o arquivo para acionar o fluxo de trabalho.
Para obter mais informações, consulte a documentação de ações GitHub.