Compartilhar via


Configurar a execução do aplicativo Databricks com app.yaml

O app.yaml arquivo em um aplicativo do Databricks define como seu aplicativo é executado. Se o aplicativo exigir um ponto de entrada diferente ou uma configuração específica do ambiente, você poderá incluir esse arquivo opcional em seu projeto para substituir o comportamento padrão.

Você pode usar a extensão de arquivo .yaml ou .yml. Esse arquivo deve estar localizado na raiz do diretório do projeto.

Definições suportadas

O app.yaml arquivo dá suporte às seguintes configurações.

Configurações Tipo Description
command sequence Use essa configuração quando precisar de um comando personalizado para executar seu aplicativo. Por padrão, o Azure Databricks executa aplicativos Python usando o comando python <my-app.py>, onde <my-app.py> está o primeiro .py arquivo na estrutura de arquivos do aplicativo. Se o aplicativo incluir Node.js, o comando padrão será npm run start. Consulte a lógica de implantação.
Como o Azure Databricks não executa o comando em um shell, as variáveis de ambiente definidas fora da configuração do aplicativo não estão disponíveis para seu aplicativo. Se o aplicativo exigir parâmetros adicionais para ser executado, use a env estrutura.
Esta configuração é opcional.
env list O Azure Databricks define automaticamente várias variáveis de ambiente padrão no ambiente de runtime do aplicativo. Essa chave de nível superior define uma lista opcional de variáveis de ambiente adicionais a serem passadas para seu aplicativo. Cada variável pode usar um valor codificado ou fazer referência a uma fonte externa, como uma entrada de banco de dados ou segredo.
Os itens válidos na lista são:
  • name: o nome da variável de ambiente.
  • Uma de:

Esta configuração é opcional.

Exemplo app.yaml para um aplicativo Streamlit

O arquivo a seguir app.yaml mostra como configurar um aplicativo Streamlit. Ele usa um comando personalizado para iniciar o aplicativo com streamlit run e define variáveis de ambiente para a ID do SQL Warehouse e um sinalizador de acompanhamento de utilização.

command: ['streamlit', 'run', 'app.py']
env:
  - name: 'DATABRICKS_WAREHOUSE_ID'
    value: 'quoz2bvjy8bl7skl'
  - name: 'STREAMLIT_GATHER_USAGE_STATS'
    value: 'false'

Use uma configuração como essa se seu aplicativo depender de um recurso de computação específico, como um SQL Warehouse, ou exigir determinadas variáveis de ambiente para controlar o comportamento do runtime.

Exemplo app.yaml para um aplicativo Flask

Este exemplo mostra como configurar um aplicativo Flask usando o servidor Gunicorn. A command configuração especifica os parâmetros de inicialização do Gunicorn e a env seção define o caminho para um volume do Catálogo do Unity como uma variável de ambiente.

command:
  - gunicorn
  - app:app
  - -w
  - 4
env:
  - name: 'VOLUME_URI'
    value: '/Volumes/catalog-name/schema-name/dir-name'

Use essa abordagem quando seu aplicativo precisar de um servidor WSGI pronto para produção, como o Gunicorn, e quando depender dos dados armazenados em um volume do Catálogo do Unity ou em outro caminho específico do ambiente.

Próximas etapas