Fluxo de trabalho: desenvolva um aplicativo com contêineres¶
Este tópico descreve o fluxo de trabalho geral para criar um Snowflake Native App with Snowpark Container Services.
Como entender o Snowpark Container Services e o Snowflake Native App Framework¶
Antes de começar a desenvolver um Snowflake Native App with Snowpark Container Services
Certifique-se de que você está familiarizado com o Snowpark Container Services e o Snowflake Native App Framework.
Os seguintes tutoriais estão disponíveis para estes produtos Snowflake:
Revise Sobre aplicativos com contêineres para entender como o Snowflake Native App with Snowpark Container Services funciona.
Revise Custos associados a aplicativos com contêineres para entender os custos associados ao desenvolvimento, publicação e uso de um aplicativo com contêineres.
Crie os contêineres e serviços a serem gerenciados por um aplicativo.¶
O primeiro passo no desenvolvimento de um aplicativo com contêineres é configurar os contêineres e serviços necessários usando o Snowpark Container Services.
O fluxo de trabalho básico para usar o Snowpark Container Services é:
Crie um repositório para armazenar imagens de contêiner.
Este repositório existe na conta do provedor e mantém as imagens de contêiner necessárias para o aplicativo. Consulte Criação de um repositório de imagens
Copie as imagens do contêiner para o repositório de imagens.
Após criar o repositório de imagens, os provedores devem carregar as imagens de contêiner usadas pelo aplicativo. O Snowpark Container Services oferece suporte ao uso de comandos do Docker para executar o upload.
Consulte Carregamento de imagens de contêiner para o repositório de imagens para maiores informações.
Crie um arquivo de especificação de serviço.
O arquivo de especificação de serviço é um arquivo YAML usado para configurar e executar serviços no Snowpark Container Services. O Snowflake Native App with Snowpark Container Services inclui este arquivo no pacote do aplicativo.
Consulte Criação do arquivo de especificação de serviço para maiores informações.
Configure o armazenamento em bloco e instantâneos.
Se os serviços em seu aplicativo exigirem o uso de armazenamento em bloco, crie um
spec.volumes
no seu arquivo de especificação de serviço.Consulte Uso de volumes de armazenamento em bloco com serviços para obter mais informações.
Carregue os arquivos necessários em um estágio.
Para tornar o arquivo de especificação de serviço acessível ao pacote do aplicativo, os provedores devem carregá-lo no estágio usado para armazenar outros arquivos exigidos pelo pacote do aplicativo.
Consulte Preparação de arquivos de dados de um sistema de arquivo local e Preparação de arquivos usando o Snowsight para mais informações sobre como enviar arquivos para um estágio.
Nota
Se você estiver usando o Snowflake CLI, você não precisa enviar os arquivos para um estágio.
Desenvolvimento e publicação de um Snowflake Native App with Snowpark Container Services¶
O fluxo de trabalho para desenvolver e publicar um aplicativo com contêineres é semelhante ao fluxo de trabalho para qualquer Snowflake Native App. Entretanto, dentro de cada estágio do fluxo de trabalho há diferenças.
A seguir está um fluxo de trabalho típico para desenvolver e publicar um aplicativo com contêineres:
Crie o arquivo de manifesto para o aplicativo.
O arquivo de manifesto para um aplicativo com contêineres inclui informações de configuração sobre os contêineres incluídos no aplicativo. Consulte Criação do arquivo do manifesto para um aplicativo com contêineres para obter mais informações.
Crie o script de configuração para o aplicativo.
O conteúdo específico do script de configuração depende dos requisitos do aplicativo. Para obter informações gerais sobre como criar o script de configuração de um aplicativo, consulte Criação de um script de configuração.
No script de configuração, você pode criar os seguintes objetos específicos para um Snowflake Native App with Snowpark Container Services:
Como adicionar um pool de computação a um aplicativo com contêineres
Criação e gerenciamento dos serviços de longa duração em um aplicativo
Criação e gerenciamento de serviços de trabalho em um aplicativo
Você também pode adicionar outros objetos que fazem parte de qualquer Snowflake Native App, incluindo:
Warehouses
Integrações de acesso externo
Segredos
Crie o pacote de aplicativo.
O processo de criação de um pacote de aplicativo para um aplicativo com contêineres é o mesmo de outros aplicativos. Consulte Criação de um pacote de aplicativo para obter mais informações.
Publicação de um aplicativo
Publicar um aplicativo como uma listagem privada ou no Snowflake Marketplace é o mesmo que publicar outros aplicativos. Consulte Compartilhamento de um aplicativo com os consumidores para maiores informações.