Sdílet prostřednictvím


Konfigurace Databricks Apps

Důležité

Aplikace Databricks jsou ve verzi Public Preview.

Tento článek podrobně popisuje nastavení automaticky nakonfigurovaná v prostředí Databricks Apps a vysvětluje, jak definovat vlastní konfiguraci vyžadovanou pro vaše aplikace.

Prostředí Databricks Apps nastavuje několik proměnných prostředí, jako je adresa URL pracovního prostoru Azure Databricks, na kterém běží aplikace, a values nutné k ověření vaší aplikace. Někdy ale vaše aplikace budou vyžadovat další vlastní proměnné. Můžete například potřebovat vlastní příkaz ke spuštění aplikace nebo parameters pro připojení ke službě SQL Warehouse. Pro tyto vlastní konfigurace parameterspoužijte soubor app.yaml.

Konfigurace aplikací Databricks pomocí app.yaml souboru

Poznámka:

Konfigurační soubor aplikace může použít nebo .yaml příponu.yml.

Pokud chcete definovat vlastní konfiguraci aplikace, přidejte app.yaml do projektu soubor. Následující table ukazuje nastavení, která můžete definovat v souboru app.yaml následované ukázkovými konfiguračními soubory.

Nastaveníapp.yaml
command

Typ: sequence

Volitelné set argumentů ke spuštění aplikace. Toto nastavení použijte, pokud k spuštění aplikace vyžadujete vlastní příkaz. Výchozí values jsou [python, app.py].

Příkaz se nespustí v shellu, takže žádné valuesset v prostředí se nepředají vaší aplikaci. Pokud vaše aplikace vyžaduje další parameters ke spuštění, použijte strukturu env.

Toto nastavení je nepovinné.
env

Typ: list

Klíč nejvyšší úrovně pro volitelnou list párů klíč-hodnota, které definují proměnné prostředí, které se mají předat vaší aplikaci. value může být skutečná hodnota parametru nebo odkaz na where, kde je hodnota uložena. Platné položky v list jsou:

- name: Název proměnné prostředí.
- Jedna z těchto možností:
- value: Hodnota proměnné prostředí.
- valueFrom: Pro externě definovanou hodnotu název zdroje obsahujícího hodnotu. Například název tajného kódu nebo databáze table obsahující hodnotu.

Toto nastavení je nepovinné.

Příklad app.yaml aplikace Streamlit

Následující příklad app.yaml konfiguračního souboru spustí aplikaci Streamlit, která předá ID SQL Warehouse a hodnotu parametru STREAMLIT_GATHER_USAGE_STATS :

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

Příklad app.yaml aplikace Flask

Následující příklad app.yaml konfiguračního souboru spustí aplikaci Flask se serverem Gunicorn a nastaví proměnnou prostředí obsahující cestu ke svazku Unity Catalog:

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

Odkazování na tajný klíč Databricks

Pokud chcete odkazovat na tajemství nakonfigurované jako závislost prostředků pro vaši aplikaci, použijte setvalueFrom: <dependency_name> v části env konfigurace app.yaml. Nahraďte dependency_name hodnotou klíče prostředku z konfigurace pro prostředek tajného kódu. Další informace o závislostech prostředků Databricks Apps najdete v tématu Návody integraci aplikace Databricks se službami Azure Databricks? Další informace o správě tajných kódů Databricks najdete v tématu Správa tajných kódů.

Následující příklad app.yaml odkazuje na tajný klíč nakonfigurovaný jako závislost prostředku:

command: [
  "python",
  "app.py"
]
env:
  - name: "SECRET_KEY"
    valueFrom: "secret-name"

Proměnné prostředí Databricks Apps

Následující proměnné jsou automaticky set v prostředí Databricks Apps a jsou k dispozici ve všech aplikacích. Pokud potřebujete set další proměnné prostředí, přidejte je do souboru app.yaml.

Proměnná Popis
DATABRICKS_APP_NAME Název spuštěné aplikace.
DATABRICKS_WORKSPACE_ID Jedinečné ID pracovního prostoru Databricks, do které aplikace patří.
DATABRICKS_HOST Adresa URL pracovního prostoru Databricks, do kterého aplikace patří.
DATABRICKS_APP_PORT Síťový port, na který by měla aplikace naslouchat.
DATABRICKS_CLIENT_ID ID klienta pro instanční objekt Databricks přiřazený k aplikaci.
DATABRICKS_CLIENT_SECRET Tajný klíč OAuth pro instanční objekt Databricks přiřazený k aplikaci.

Výchozí proměnné prostředí pro Streamlit

Následující proměnné specifické pro Stream jsou automaticky nakonfigurované v prostředí Databricks Apps a dostupné pro vaše aplikace Databricks, které používají architekturu Streamlit:

Proměnná Popis
STREAMLIT_SERVER_ADDRESS Adresa serveru pro použití službou Streamlit. Tato hodnota je set až 0.0.0.0 a nesmí být změněna.
STREAMLIT_SERVER_PORT Port pro použití službou Streamlit. Tato hodnota je set k DATABRICKS_APP_PORT a nesmí být přepsána.
STREAMLIT_SERVER_ENABLE_XSRF_PROTECTION Vzhledem k tomu, že reverzní proxy server aplikace Databricks chrání proti padělání požadavků mezi weby (XSRF), je to mezi set a false.
STREAMLIT_SERVER_ENABLE_CORS Vzhledem k tomu, že reverzní proxy server aplikací Databricks chrání proti sdílení prostředků mezi zdroji (CORS), je zde rozsah set až false.
STREAMLIT_SERVER_HEADLESS To je settrue, aby streamlit běžel bez otevření prohlížeče window při spuštění.
STREAMLIT_BROWSER_GATHER_USAGE_STATS Toto je od set do false, aby se zabránilo odesílání statistik uživatelů do Streamlit.