Wdrażanie aplikacji Dash z PlaidCloud Git
To kompletna ścieżka od kodu aplikacji Dash na Twoim komputerze do działającego adresu URL, z użyciem PlaidCloud Git — zarządzanej usługi Git wbudowanej w Twój obszar roboczy — jako źródła. Ponieważ PlaidCloud Git jest zarządzany, połączenie, z którego wdrażana jest aplikacja, nie wymaga adresu serwera, nazwy użytkownika ani tokenu: PlaidCloud uwierzytelnia się w Twoim imieniu.
Całość składa się z pięciu kroków:
- Napisz minimalną aplikację Dash.
- Umieść ją w repozytorium PlaidCloud Git.
- Utwórz zarządzane połączenie PlaidCloud Git.
- Opublikuj aplikację Dash wskazującą to repozytorium.
- Otwórz udostępnioną aplikację — i przeczytaj dzienniki budowania, jeśli się nie uruchomi.
Ten przewodnik jest niemal identyczny z Wdrażaniem aplikacji Panel z PlaidCloud Git — obie są serwerowymi aplikacjami Python budowanymi z Git i udostępnianymi w ten sam sposób. Różnią się kodem aplikacji oraz jednym polem w oknie publikacji.
Zanim zaczniesz
Dział zatytułowany „Zanim zaczniesz”- Otwórz Git ze swojego obszaru roboczego, aby upewnić się, że masz dostęp do PlaidCloud Git. Domyślnie organizacja Twojego obszaru roboczego zawiera repozytorium
apps— naturalne miejsce także dla aplikacji Dash. - Zainstaluj lokalnie
git, jeśli chcesz wypychać kod ze swojego komputera (pliki możesz też dodawać w interfejsie internetowym Git).
1. Napisz minimalną aplikację Dash
Dział zatytułowany „1. Napisz minimalną aplikację Dash”Aplikacja potrzebuje punktu wejścia — pliku Python, który buduje aplikację Dash i udostępnia jej serwer Flask — oraz opcjonalnie pliku requirements.txt z dodatkowymi pakietami, umieszczonego w katalogu głównym repozytorium lub obok punktu wejścia.
apps/├── app.py # entry point — exposes `server`└── requirements.txt # optional; extra dependencies (repo root or next to app.py)Utwórz app.py:
import plaidcloud_dash as pcdfrom dash import Dash, Input, Output, html
app = Dash(__name__) # picks up DASH_URL_BASE_PATHNAME from the platform automaticallyserver = app.server # the platform imports this and wires per-user sign-in for you
app.layout = html.Div( [ html.H1("Hello from PlaidCloud Git"), html.P(id="whoami"), html.Button("Who am I?", id="whoami-btn", n_clicks=0), ])
@app.callback(Output("whoami", "children"), Input("whoami-btn", "n_clicks"))def _whoami(n_clicks): if not n_clicks: return "" return f"Signed in as {pcd.current_user()!r}"
if __name__ == "__main__": app.run(debug=True)To kompletna aplikacja. Pakiety dash, plotly, dash-mantine-components, dash-ag-grid oraz biblioteki klienckie PlaidCloud (plaidcloud-rpc, plaidcloud-utilities) są zainstalowane z góry, więc w requirements.txt wymieniaj tylko dodatkowe pakiety. Nie przekazuj requests_pathname_prefix ani url_base_pathname do Dash(__name__) — platforma ustawia prefiks adresu URL automatycznie przez DASH_URL_BASE_PATHNAME, a ustawienie obu powoduje błąd konfiguracji przy starcie. Pełny kontrakt aplikacji i funkcje pomocnicze dostępu do danych opisano w Kontrakcie aplikacji oraz w Odczycie danych i zalogowanego użytkownika w aplikacji Dash.
2. Umieść aplikację w repozytorium PlaidCloud Git
Dział zatytułowany „2. Umieść aplikację w repozytorium PlaidCloud Git”Użyj istniejącego repozytorium apps w swoim obszarze roboczym lub utwórz nowe. Następnie umieść w nim swój kod.
Ponieważ logujesz się przez PlaidCloud, Twoje konto Git nie ma osobnego hasła — wygeneruj osobisty token dostępu (Twój awatar → Ustawienia → Aplikacje) z zakresami odczytu i zapisu repozytorium i użyj go jako hasła, gdy Git o nie poprosi. Skopiuj adres klonowania HTTPS repozytorium z przycisku Kod, a następnie:
git clone https://<your-git-host>/<org>/apps.gitcd apps# add app.py (and requirements.txt), then:git add app.py requirements.txtgit commit -m "Add hello dash app"git pushZapamiętaj ścieżkę repozytorium — <org>/apps — gdzie <org> to nazwa organizacji Twojego obszaru roboczego. Wpiszesz ją w następnym kroku. Pełne informacje o klonowaniu, zatwierdzaniu i wypychaniu znajdziesz w Repozytoriach.
Token tutaj służy tylko Tobie do wypychania kodu. Połączenie, które utworzysz za chwilę, jest zarządzane i nie wymaga tokenu — nie myl tych dwóch rzeczy.
3. Utwórz zarządzane połączenie PlaidCloud Git
Dział zatytułowany „3. Utwórz zarządzane połączenie PlaidCloud Git”Połączenie informuje wdrożenie Dash, gdzie znajduje się jego kod. W przypadku PlaidCloud Git połączenie jest zarządzane — PlaidCloud dostarcza host i poświadczenia, więc podajesz tylko docelowe repozytorium. To ten sam typ połączenia, którego używa serwerowa aplikacja Panel.
- Otwórz Narzędzia > Połączenia, kliknij Nowe połączenie i wybierz PlaidCloud Git.
- Nadaj połączeniu Nazwę konta (na przykład
Apps Repo). - Ustaw Ścieżkę repozytorium na
<org>/apps— ścieżkę zapamiętaną w kroku 2 — oraz Domyślną gałąź namain. Pozostaw Ścieżkę początkową pustą, chyba że Twoje aplikacje znajdują się w podkatalogu. - Kliknij Utwórz.
Nie ma pól Adres URL serwera, Użytkownik, Hasło ani SSL/SSH — PlaidCloud Git jest zarządzany, więc platforma obsługuje host i uwierzytelnianie. Pełny formularz, w tym Użycie i Model zabezpieczeń połączenia (kto w obszarze roboczym może go używać), opisano w Połączeniu PlaidCloud Git.
4. Opublikuj aplikację Dash
Dział zatytułowany „4. Opublikuj aplikację Dash”Teraz skieruj wdrożenie Dash na to połączenie.
- Otwórz Moje aplikacje Panel i kliknij Nowa aplikacja Dash.
- W sekcji Ustawienia katalogu ustaw Nazwę aplikacji i Slug URL — slug to adres URL i wewnętrzna nazwa aplikacji, więc użyj małych liter, cyfr i łączników, zaczynając od litery, maksymalnie 40 znaków (na przykład
hello-dash). Opcjonalna Notatka opisuje aplikację. - W sekcji Połączenie Git i obserwator publikacji:
- Połączenie Git — połączenie PlaidCloud Git utworzone w kroku 3.
- Gałąź —
main. Wypchnięcia do tej gałęzi automatycznie przebudowują i ponownie wdrażają aplikację. - Punkt wejścia —
app.py.
- W sekcji Środowisko uruchomieniowe wybierz CPU, Pamięć i okno Bezczynność (minuty). Zaznacz Zezwól na dostęp publiczny tylko wtedy, gdy aplikacja ma być dostępna bez logowania. Nie ma ustawienia Projekt — to opcja specyficzna dla Panel.
- W sekcji Zaawansowane (osadzone udostępnianie) — opcjonalnie. Pozostaw puste, chyba że osadzasz aplikację w innej witrynie.
- Kliknij Opublikuj.
5. Otwórz aplikację — i przeczytaj dzienniki, jeśli się nie uruchomi
Dział zatytułowany „5. Otwórz aplikację — i przeczytaj dzienniki, jeśli się nie uruchomi”Po opublikowaniu aplikacja jest budowana: PlaidCloud klonuje gałąź, instaluje Twój requirements.txt i buduje obraz kontenera na podstawie obrazu platform-dash-base. Jej Stan jest widoczny na liście Moje aplikacje Panel i aktualizuje się automatycznie.
- Gdy Stan to Gotowe, otwórz aplikację pod adresem
https://<your-tenant-host>/serve/<slug>/. Pierwsze żądanie po okresie bezczynności uruchamia aplikację, wyświetlając w tym czasie krótki ekran ładowania PlaidCloud. - Jeśli budowanie się nie powiedzie, otwórz aplikację i sprawdź jej dzienniki Zbuduj — brakująca zależność lub błąd importu będzie tam widoczny. W Korzystaniu z aplikacji Dash dowiesz się, co oznacza każdy stan, jak czytać dzienniki i jak wywołać ponowne budowanie.
Od tego momentu każde wypchnięcie do gałęzi połączenia automatycznie przebudowuje i ponownie wdraża aplikację — zmień app.py, wykonaj git push, a zmiana trafi na żywo. (Chyba że aplikacja jest zablokowana — wtedy wypchnięcia są pomijane do czasu odblokowania; zobacz Korzystanie z aplikacji Dash.)
Następne kroki
Dział zatytułowany „Następne kroki”- Odczyt danych i zalogowanego użytkownika w aplikacji Dash — wykonuj zapytania do danych PlaidCloud jako osoba przeglądająca aplikację.
- Korzystanie z aplikacji Dash — stan budowania, dzienniki, blokowanie i usuwanie aplikacji.
- Połączenie PlaidCloud Git — pełny formularz połączenia, użycie i model zabezpieczeń.
- Repozytoria — gałęzie, tokeny i współpraca w PlaidCloud Git.