arrow_back

Wdrażanie witryny w Cloud Run

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Wdrażanie witryny w Cloud Run

Lab 1 godz. universal_currency_alt 1 punkt show_chart Wprowadzające
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP659

Moduły Google Cloud do samodzielnego ukończenia

Opis

Utrzymanie działających witryn może być trudnym zadaniem ze względu na koszt związany z tworzeniem maszyn wirtualnych, klastrów, podów i usług oraz zarządzaniem nimi. Jest to uzasadnione w przypadku dużych, wielowarstwowych aplikacji, ale dla kogoś, kto chce po prostu wdrożyć witrynę i udostępnić ją w internecie, wydaje się zbyt dużym obciążeniem.

Dzięki Cloud Run, implementacji platformy Google Knative w Google Cloud, można wdrożyć witrynę i zarządzać nią bez wysiłku związanego z utrzymaniem infrastruktury, który jest potrzebny w przypadku wdrożeń opartych na maszynach wirtualnych lub czystej usłudze Kubernetes. Takie podejście jest prostsze nie tylko z perspektywy zarządzania. Umożliwia ono również „skalowanie do zera” w przypadku braku żądań przychodzących do witryny.

Cloud Run umożliwia „bezserwerowe” programowanie w kontenerach, które mogą działać we własnych klastrach Google Kubernetes Engine (GKE) lub we w pełni zarządzanym rozwiązaniu PaaS udostępnianym przez Cloud Run. W tym module będziemy realizować ten drugi scenariusz.

Ćwiczenia zostały ułożone w kolejności wykonywania typowych zadań przez programistę w chmurze:

  1. Tworzenie kontenera Dockera na podstawie aplikacji
  2. Wdrażanie kontenera w Cloud Run
  3. Modyfikowanie witryny
  4. Publikowanie nowej wersji z zerowym czasem przestoju

Diagram architektury

Poniżej możesz prześledzić przepływ wdrażania i hosting w Cloud Run.

Najpierw w Cloud Build jest tworzony obraz Dockera, który jest aktywowany przy użyciu Cloud Shell. Następnie obraz jest wdrażany w Cloud Run za pomocą polecenia Cloud Shell.

Diagram opisu modułu

Czego się nauczysz

  • Jak utworzyć obraz Dockera za pomocą Cloud Build i przesłać go do Artifact Registry
  • Jak wdrożyć obrazy Dockera w Cloud Run
  • Jak zarządzać wdrożeniami w Cloud Run
  • Jak skonfigurować punkt końcowy dla aplikacji w Cloud Run

Konfiguracja i wymagania

Zanim klikniesz przycisk Rozpocznij moduł

Zapoznaj się z tymi instrukcjami. Moduły mają limit czasowy i nie można ich zatrzymać. Gdy klikniesz Rozpocznij moduł, na liczniku wyświetli się informacja o tym, na jak długo udostępniamy Ci zasoby Google Cloud.

W tym praktycznym module możesz spróbować swoich sił w wykonywaniu opisywanych działań w prawdziwym środowisku chmury, a nie w jego symulacji lub wersji demonstracyjnej. Otrzymasz nowe, tymczasowe dane logowania, dzięki którym zalogujesz się i uzyskasz dostęp do Google Cloud na czas trwania modułu.

Do ukończenia modułu potrzebne będą:

  • dostęp do standardowej przeglądarki internetowej (zalecamy korzystanie z przeglądarki Chrome).
Uwaga: uruchom ten moduł w oknie incognito lub przeglądania prywatnego. Dzięki temu unikniesz konfliktu między swoim kontem osobistym a kontem do nauki, co mogłoby spowodować naliczanie oddatkowych opłat na koncie osobistym.
  • Odpowiednia ilość czasu na ukończenie modułu – pamiętaj, że gdy rozpoczniesz, nie możesz go wstrzymać.
Uwaga: jeśli masz już osobiste konto lub projekt w Google Cloud, nie używaj go w tym module, aby uniknąć naliczania opłat na koncie.

Rozpoczynanie modułu i logowanie się w konsoli Google Cloud

  1. Kliknij przycisk Rozpocznij moduł. Jeśli moduł jest odpłatny, otworzy się wyskakujące okienko, w którym możesz wybrać formę płatności. Po lewej stronie znajduje się panel Szczegóły modułu z następującymi elementami:

    • przyciskiem Otwórz konsolę Google;
    • czasem, który Ci pozostał;
    • tymczasowymi danymi logowania, których musisz użyć w tym module;
    • innymi informacjami potrzebnymi do ukończenia modułu.
  2. Kliknij Otwórz konsolę Google. Moduł uruchomi zasoby, po czym otworzy nową kartę ze stroną logowania.

    Wskazówka: otwórz karty obok siebie w osobnych oknach.

    Uwaga: jeśli pojawi się okno Wybierz konto, kliknij Użyj innego konta.
  3. W razie potrzeby skopiuj nazwę użytkownika z panelu Szczegóły modułu i wklej ją w oknie logowania. Kliknij Dalej.

  4. Skopiuj hasło z panelu Szczegóły modułu i wklej je w oknie powitania. Kliknij Dalej.

    Ważne: musisz użyć danych logowania z panelu po lewej stronie, a nie danych logowania Google Cloud Skills Boost. Uwaga: korzystanie z własnego konta Google Cloud w tym module może wiązać się z dodatkowymi opłatami.
  5. Na kolejnych stronach wykonaj następujące czynności:

    • Zaakceptuj Warunki korzystania z usługi.
    • Nie dodawaj opcji odzyskiwania ani uwierzytelniania dwuskładnikowego (ponieważ konto ma charakter tymczasowy).
    • Nie rejestruj się w bezpłatnych wersjach próbnych.

Poczekaj, aż na karcie otworzy się konsola Google Cloud.

Uwaga: aby wyświetlić menu z listą produktów i usług Google Cloud Console, w lewym górnym rogu kliknij menu nawigacyjne. Ikona menu nawigacyjnego

Aktywowanie Cloud Shell

Cloud Shell to maszyna wirtualna oferująca wiele narzędzi dla programistów. Zawiera stały katalog domowy o pojemności 5 GB i działa w Google Cloud. Dzięki wierszowi poleceń Cloud Shell zyskujesz dostęp do swoich zasobów Google Cloud.

  1. Kliknij Aktywuj Cloud Shell Ikona aktywowania Cloud Shell na górze konsoli Google Cloud.

Po połączeniu użytkownik od razu jest uwierzytelniony. Uruchomi się Twój projekt o identyfikatorze PROJECT_ID. Dane wyjściowe zawierają wiersz z zadeklarowanym identyfikatorem PROJECT_ID dla tej sesji:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud to narzędzie wiersza poleceń Google Cloud. Jest ono już zainstalowane w Cloud Shell i obsługuje funkcję autouzupełniania po naciśnięciu tabulatora.

  1. (Opcjonalnie) Aby wyświetlić listę aktywnych kont, użyj tego polecenia:
gcloud auth list
  1. Kliknij Autoryzuj.

  2. Dane wyjściowe powinny wyglądać tak:

Dane wyjściowe:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcjonalnie) Aby wyświetlić identyfikator projektu, użyj tego polecenia:
gcloud config list project

Dane wyjściowe:

[core] project = <project_ID>

Przykładowe dane wyjściowe:

[core] project = qwiklabs-gcp-44776a13dea667a6 Uwaga: pełną dokumentację gcloud w Google Cloud znajdziesz w opisie narzędzia wiersza poleceń gcloud.

Zadanie 1. Klonowanie repozytorium źródłowego

Ponieważ wdrażana jest istniejąca witryna, wystarczy sklonować źródło, dzięki czemu będzie można skoncentrować się na tworzeniu obrazów Dockera i ich wdrażaniu w Cloud Run.

  1. Otwórz nowe okno Cloud Shell i uruchom te polecenia, aby sklonować repozytorium git i przejść do odpowiedniego katalogu.
git clone https://github.com/googlecodelabs/monolith-to-microservices.git cd ~/monolith-to-microservices
  1. Uruchom to polecenie, aby zainstalować zależności NodeJS, co pozwoli na przetestowanie aplikacji przed wdrożeniem:
./setup.sh

Wykonanie tych poleceń zajmie kilka minut. Po zakończeniu zobaczysz komunikat o powodzeniu.

  1. Przetestuj swoją aplikację, wykonując następujące polecenie w celu uruchomienia serwera WWW:
cd ~/monolith-to-microservices/monolith npm start

Dane wyjściowe:

Monolith listening on port 8080!
  1. Wyświetl podgląd swojej aplikacji, klikając ikonę podglądu w przeglądarce i wybierając Podejrzyj na porcie 8080.

Opcja podglądu na porcie 8080 wybrana w rozwiniętym menu podglądu w przeglądarce

Otworzy się nowe okno, w którym zobaczysz działającą stronę internetową swojego sklepu Fancy Store.

Witryna Fancy Store

  1. Po przejrzeniu strony internetowej zamknij to okno i zatrzymaj proces serwera WWW, naciskając CTRL + C w Cloud Shell.

Zadanie 2. Tworzenie kontenera Dockera za pomocą Cloud Build

Po przygotowaniu plików źródłowych nadszedł czas na umieszczenie aplikacji w kontenerze Dockera.

Ten proces składa się zwykle z 2 kroków obejmujących utworzenie kontenera Dockera i przeniesienie go do rejestru w celu zapisania obrazu pobieranego potem przez GKE. Uprość sobie zadanie i skorzystaj z Cloud Build, aby za pomocą jednego polecenia utworzyć kontener Dockera oraz umieścić obraz w Artifact Registry. Aby prześledzić proces ręcznego tworzenia pliku Dockera i jego przenoszenia, zapoznaj się z krótkim wprowadzeniem do Container Registry.

Cloud Build skompresuje pliki znajdujące się w katalogu i przeniesie je do zasobnika Cloud Storage. Następnie w procesie kompilacji wszystkie pliki z zasobnika razem z plikiem Dockerfile, który znajduje się w tym samym katalogu, zostaną użyte do uruchomienia procesu kompilacji Dockera.

Tworzenie docelowego repozytorium Dockera

Musisz utworzyć repozytorium, aby móc przekazać do niego obrazy. Przekazywanie obrazu nie może aktywować tworzenia repozytorium, a konto usługi Cloud Build nie ma uprawnień do tworzenia repozytoriów.

  1. Menu nawigacyjnym, w sekcji CI/CD, przejdź do Artifact Registry > Repozytoria.

  2. Kliknij Utwórz repozytorium.

  3. Jako nazwę repozytorium podaj monolith-demo.

  4. Jako format wybierz Docker.

  5. W sekcji Typ lokalizacji wybierz Region, a następnie wybierz lokalizację .

  6. Kliknij Utwórz.

Konfigurowanie uwierzytelniania

Zanim przeniesiesz lub pobierzesz obrazy, skonfiguruj Dockera tak, aby używał Google Cloud CLI do uwierzytelniania żądań do Artifact Registry.

  • Aby skonfigurować uwierzytelnianie w repozytoriach Dockera w regionie , uruchom w Cloud Shell to polecenie:
gcloud auth configure-docker -docker.pkg.dev

Polecenie to aktualizuje konfigurację Dockera. Teraz możesz połączyć się z Artifact Registry w projekcie Google Cloud, aby przenosić i pobierać obrazy.

Wdrażanie obrazu

Teraz przeprowadzisz wdrożenie utworzonego wcześniej obrazu.

  1. Najpierw musisz włączyć interfejsy Cloud Build API, Artifact Registry API i Cloud Run API. W tym celu uruchom to polecenie:
gcloud services enable artifactregistry.googleapis.com \ cloudbuild.googleapis.com \ run.googleapis.com
  1. Po włączeniu interfejsów API uruchom to polecenie, aby rozpocząć proces kompilacji:
gcloud builds submit --tag {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 Uwaga: zajmie to kilka minut.
  1. Aby wyświetlić historię kompilacji lub obejrzeć ten proces w czasie rzeczywistym, w konsoli kliknij Menu nawigacyjne > Cloud Build > Historia. Tutaj znajdziesz listę wszystkich swoich kompilacji. Na razie powinna być tam widoczna tylko jedna utworzona wcześniej kompilacja.

Lista Historia kompilacji

  • Po kliknięciu identyfikatora kompilacji zostaną wyświetlone wszystkie szczegóły kompilacji, w tym dane wyjściowe dzienników.

  • Aby wyświetlić utworzony obraz kontenera, na stronie Szczegóły kompilacji kliknij kartę Szczegóły wykonania, a następnie kliknij link do obrazu.

Szczegóły kompilacji

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Utworzenie kontenera Dockera za pomocą Google Cloud Build

Zadanie 3. Wdrażanie kontenera w Cloud Run

Po umieszczeniu witryny w kontenerze i przeniesieniu kontenera do Artifact Registry należy przeprowadzić wdrożenie w Cloud Run.

Są 2 sposoby wdrażania w Cloud Run:

  • Zarządzana usługa Cloud Run: model platformy jako usługi (PaaS), w którym cały cykl życia kontenera jest zarządzany przez samą usługę Cloud Run. W tym module użyjesz tej metody.
  • Cloud Run w GKE: usługa Cloud Run z dodatkową warstwą kontroli, która umożliwia użycie własnych klastrów i podów z GKE. Tutaj znajdziesz więcej informacji na ten temat
  1. Uruchom to polecenie, aby wdrożyć obraz w Cloud Run:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 --region {{{project_0.default_region | Region}}}
  1. Przy pytaniu o pozwolenie na nieuwierzytelnione wywołania [monolith] wpisz Y.

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Wdrożenie kontenera w Cloud Run

Sprawdzanie wdrożenia

  1. Aby sprawdzić, czy wdrożenie zostało utworzone, uruchom następujące polecenie:
gcloud run services list Uwaga: zmiana stanu poda na Uruchomiono może chwilę potrwać.

Dane wyjściowe:

✔ SERVICE: monolith REGION: {{{project_0.default_region | Region}}} URL: https://monolith-2cxtmp4m2q-uc.a.run.app LAST DEPLOYED BY: student-02-aa7a5aed362d@qwiklabs.net LAST DEPLOYED AT: 2022-08-19T19:16:14.351981Z

Dane wyjściowe zawierają kilka informacji. Widać wdrożenie, a także nazwę użytkownika, który je wdrożył (adres e-mail) oraz adres URL umożliwiający dostęp do aplikacji. Wygląda na to, że wszystko zostało utworzone.

  1. Kliknij adres URL widoczny na liście usług. Powinna się pojawić ta sama witryna, której podgląd był wyświetlany lokalnie.
Uwaga: aplikacje wdrożone w Cloud Run można również wyświetlać w konsoli. Aby to zrobić, należy przejść do Cloud RunMenu nawigacyjnym.

Zadanie 4. Tworzenie nowej wersji z niższą wartością równoczesności

W tej sekcji wdrożysz ponownie swoją aplikację, ale tym razem modyfikując jeden z parametrów.

Domyślnie aplikacja w Cloud Run będzie miała równoczesność o wartości 80, co oznacza, że poszczególne instancje kontenerów będą równocześnie obsługiwać maksymalnie 80 żądań. To duże odchylenie od modelu funkcji jako usługi, w którym jedna instancja równocześnie obsługuje jedno żądanie.

  1. Uruchom to polecenie, aby wdrożyć ponownie ten sam obraz kontenera z wartością równoczesności równą 1 (w celu przetestowania) i zobaczyć, co się stanie:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 --region {{{project_0.default_region | Region}}} --concurrency 1
  1. Aby wyświetlić szczegóły, w Menu nawigacyjnym kliknij Cloud Run, a następnie kliknij usługę monolith:

Usługa monolith

  1. Na stronie Szczegóły usługi kliknij kartę Wersje. Powinny być teraz widoczne 2 utworzone wersje.

Szczegóły najnowszego wdrożenia znajdują się po prawej stronie.

Karta monolith Wersje

Widać, że wartość równoczesności została zmniejszona do „1”.

Karta monolith Kontener

Mimo że taka konfiguracja jest wystarczająca na potrzeby testowania, w większości scenariuszy produkcyjnych kontenery będą obsługiwały wiele żądań równoczesnych.

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Utworzenie nowej wersji z niższą wartością równoczesności

Następnie możesz przywrócić oryginalną wartość równoczesności bez ponownego wdrażania aplikacji. Wartość równoczesności możesz ustawić z powrotem na „80” lub po prostu ustawić wartość „0”, co spowoduje usunięcie wszelkich ograniczeń równoczesności, albo ustawić dla niej domyślną maksymalną wartość (która wynosi właśnie 80).

  1. Uruchom to polecenie, aby zaktualizować bieżącą wersję, używając wartości równoczesności 80:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 --region {{{project_0.default_region | Region}}} --concurrency 80

Zauważysz, że została utworzona inna wersja, ruch został przekierowany, a równoczesność ma z powrotem wartość 80.

Uwaga: aby zobaczyć najświeższe informacje, konieczne może być opuszczenie karty Wersje i ponowne jej wyświetlenie.

Zadanie 5. Wprowadzanie zmian w witrynie

Scenariusz: dział marketingu poprosił o zmianę strony głównej witryny. Powinna ona zawierać więcej informacji o firmie i produktach, które sprzedaje.

Zadanie: dodasz więcej tekstu do strony głównej, aby zadowolić dział marketingu. Wygląda na to, że jeden z naszych programistów przygotował już odpowiednie zmiany i umieścił je w pliku o nazwie index.js.new. Wystarczy skopiować ten plik do index.js i zmiany zostaną automatycznie zastosowane. Wykonaj podane niżej instrukcje, by wprowadzić odpowiednie zmiany.

  1. Uruchom te polecenia, aby skopiować zaktualizowany plik z poprawną nazwą:
cd ~/monolith-to-microservices/react-app/src/pages/Home mv index.js.new index.js
  1. Wyświetl zawartość pliku, aby sprawdzić zmiany:
cat ~/monolith-to-microservices/react-app/src/pages/Home/index.js

Wynikowy kod powinien wyglądać podobnie do tego:

/* Copyright 2019 Google LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ import React from "react"; import { makeStyles } from "@material-ui/core/styles"; import Paper from "@material-ui/core/Paper"; import Typography from "@material-ui/core/Typography"; const useStyles = makeStyles(theme => ({ root: { flexGrow: 1 }, paper: { width: "800px", margin: "0 auto", padding: theme.spacing(3, 2) } })); export default function Home() { const classes = useStyles(); return ( <div className={classes.root}> <Paper className={classes.paper}> <Typography variant="h5"> Fancy Fashion &amp; Style Online </Typography> <br /> <Typography variant="body1"> Tired of mainstream fashion ideas, popular trends and societal norms? This line of lifestyle products will help you catch up with the Fancy trend and express your personal style. Start shopping Fancy items now! </Typography> </Paper> </div> ); }

Zaktualizowane zostały komponenty React, ale musisz jeszcze utworzyć aplikację React, by wygenerować pliki statyczne.

  1. Uruchom to polecenie, by utworzyć aplikację React i skopiować ją do katalogu publicznego usługi monolith:
cd ~/monolith-to-microservices/react-app npm run build:monolith

Po zaktualizowaniu kodu ponownie utwórz kontener Dockera i opublikuj go w Artifact Registry. Możesz użyć tego samego polecenia co wcześniej, ale tym razem zaktualizujesz etykietę wersji.

  1. Uruchom to polecenie, aby aktywować nową kompilację Cloud Build ze zaktualizowaną wersją obrazu 2.0.0:
cd ~/monolith-to-microservices/monolith gcloud builds submit --tag {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:2.0.0

W następnej sekcji za pomocą tego obrazu zaktualizujesz swoją aplikację z zerowym czasem przestoju.

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Wprowadzenie zmian w witrynie

Zadanie 6. Aktualizowanie witryny z zerowym czasem przestoju

Zmiany zostały wprowadzone i dział marketingu jest zadowolony z aktualizacji. Nadszedł czas, aby zaktualizować witrynę bez przerw dla użytkowników. Cloud Run traktuje każde wdrożenie jako nową wersję, która najpierw zostanie przełączona w tryb online, a następnie zostanie do niej przekierowany ruch.

Domyślnie najnowsza wersja będzie miała przypisane 100% ruchu przychodzącego do usługi. „Trasy” umożliwiają przydzielenie różnych wartości procentowych ruchu do różnych wersji w ramach usługi. Aby zaktualizować witrynę, wykonaj instrukcje opisane poniżej.

  • Uruchom to polecenie, aby ponownie wdrożyć usługę w celu zaktualizowania obrazu do nowej wersji:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:2.0.0 --region {{{project_0.default_region | Region}}}

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Zaktualizowanie witryny przy zerowym czasie przestoju

Sprawdzanie wdrożenia

  1. Sprawdź, czy wdrożenie zostało zaktualizowane, uruchamiając następujące polecenie:
gcloud run services describe monolith --platform managed --region {{{project_0.default_region | Region}}}

Dane wyjściowe:

✔ Service monolith in region URL: https://monolith-hl5loimtga-uc.a.run.app Ingress: all Traffic: 100% LATEST (currently monolith-00005-xum) Last updated on 2022-08-19T18:39:39.885859Z by student-02-9af04e268b9e@qwiklabs.net: Revision monolith-00005-xum Image: -docker.pkg.dev/qwiklabs-gcp-00-30d07cf3de5b/monolith-demo/monolith:2.0.0 Port: 8080 Memory: 512Mi CPU: 1000m Service account: 467160385597-compute@developer.gserviceaccount.com Concurrency: 80 Max Instances: 1 Timeout: 300s

Widać tutaj, że usługa korzysta teraz z najnowszej wersji obrazu wdrożonego w nowej wersji.

Aby sprawdzić zmiany, przejdź do zewnętrznego adresu URL usługi w Cloud Run, odśwież stronę i zwróć uwagę na zaktualizowany tytuł aplikacji.

  1. Uruchom to polecenie, aby wyświetlić listę usług i adres IP:
gcloud beta run services list
  1. Kliknij adres URL usługi. W Twojej witrynie powinien być teraz widoczny tekst dodany ostatnio do komponentu strony głównej.

Zaktualizowana witryna Fancy Store

Gratulacje!

Udało Ci się wdrożyć i zaktualizować witrynę w Cloud Run, a także zmniejszyć, a następnie przywrócić jej skalę.

Ukończ kurs

Ten moduł do samodzielnego ukończenia wchodzi w skład kursu Website on Google Cloud. Każdy kurs składa się z zestawu powiązanych ze sobą modułów, które razem tworzą ścieżkę szkoleniową. Za ukończenie kursu otrzymujesz odznakę – stanowi ona potwierdzenie Twojego osiągnięcia. Swoje odznaki możesz ustawiać jako widoczne publicznie, a także podać do nich linki w swoim CV lub w mediach społecznościowych. Zarejestruj się na dowolny kurs zawierający ten moduł, a zostanie on automatycznie zaliczony. Wszystkie dostępne kursy znajdziesz w katalogu Google Cloud Skills Boost.

Kolejne kroki / Więcej informacji

Jeśli nie znasz tych usług, oto linki do informacji na ich temat:

Ostatnia aktualizacja instrukcji: 13 grudnia 2023 r.

Ostatni test modułu: 13 grudnia 2023 r.

Copyright 2024 Google LLC. Wszelkie prawa zastrzeżone. Google i logo Google są znakami towarowymi Google LLC. Wszelkie inne nazwy firm i produktów mogą być znakami towarowymi odpowiednich podmiotów, z którymi są powiązane.