1. Plan, czyli tworzenie podstaw
Zanim zaczniemy budować dom, musimy zabezpieczyć teren, skonfigurować sposób płacenia za materiały i otworzyć skrzynkę z narzędziami. W chmurze te pojęcia przekładają się na projekty i płatności.
Czym jest projekt Google Cloud?
Google Cloud to ogromny cyfrowy magazyn pełen zaawansowanych narzędzi i usług. Projekt to Twój prywatny, zabezpieczony obszar w tym magazynie. Jest to kontener, który zawiera wszystkie Twoje zasoby (takie jak serwery, bazy danych i kod), śledzi wszystkie Twoje koszty i zarządza tym, kto może w nim korzystać z narzędzi. Wszystkie działania, które podejmiemy dzisiaj, będą wykonywane w ramach tego projektu.

Dziś skupiamy się na projekcie, ale warto wiedzieć, gdzie mieści się on w większej strukturze używanej przez firmy. Google Cloud porządkuje wszystko w przejrzystej hierarchii od góry do dołu.
Organization (The entire Corporation, e.g., "MegaCorp Inc.")
└── Folders (The Corporate Divisions, e.g., "Research & Development")
├── Project (A specific team's lab, e.g., "Project Phoenix - R&D")
│ └── Resources (The tools in the lab, e.g., a specific server)
└── Project (Another team's workshop, e.g., "Q4 Marketing Campaign")
└── Resources (The tools for that campaign, e.g., a storage bucket)
Oto poziomy tej hierarchii od najwyższego do najniższego:
- Węzeł organizacji:
- Jest to siedziba całej firmy (np.
yourcompany.com). Znajduje się ono na samym szczycie i służy do ustawiania zasad zabezpieczeń i rozliczeń obowiązujących w całej firmie. W przypadku bezpłatnej wersji próbnej Google Cloud zwykle działasz bez węzła organizacji, co jest w porządku, jeśli chcesz się czegoś nauczyć.
- Jest to siedziba całej firmy (np.
- Foldery:
- Są to oddziały lub działy w korporacji (np. inżynieria, finanse). Są one opcjonalną warstwą służącą do grupowania projektów i stosowania zasad do całych zespołów naraz. W tych warsztatach nie będziemy używać folderów.
- Projekty (nasz priorytet):
- Jest to konkretny warsztat lub moduł zespołu. To tutaj odbywa się właściwa praca i jest to najważniejszy poziom naszych warsztatów. Wszystkie tworzone zasoby muszą znajdować się w projekcie. Projekt to także poziom, na którym włączasz interfejsy API (usługi) i łączysz konto rozliczeniowe.
- Zasoby:
- Są to poszczególne narzędzia i maszyny w warsztacie. Wdrażana przez nas aplikacja Cloud Run jest zasobem. Maszyna wirtualna, baza danych lub zasobnik na dane to przykłady zasobów.
Praktyczne ćwiczenie: tworzenie i konfigurowanie projektu
- Odbierz środki
goo.gle/devfest-boston-ai/. Zaakceptuj Warunki korzystania z Google Cloud Platform. Po zastosowaniu środków zobaczysz komunikat informujący o ich przyznaniu.
- Otwórz .
- Na górnym pasku nawigacyjnym kliknij Wybierz projekt, a potem Nowy projekt.

- Nadaj projektowi unikalną nazwę (np.
idea-to-launch-yourname) i kliknij Utwórz. Wybierz „Brak organizacji”.
- Sprawdź, czy w menu u góry strony wybrany jest Twój nowy projekt.
Dlaczego rozliczenia są tak ważne?
Konto rozliczeniowe to finansowa podstawa Twojego projektu. Jest to „karta kredytowa w pliku”, z której płacisz za używane zasoby. Na potrzeby tych warsztatów korzystasz z bezpłatnej wersji próbnej Google Cloud, w ramach której otrzymujesz bezpłatne środki. Jest to bezpieczne środowisko w piaskownicy. Nie obciążymy Cię automatycznie opłatą po wykorzystaniu środków lub zakończeniu okresu próbnego, chyba że ręcznie przejdziesz na wyższą wersję konta. Zrozumienie rozliczeń to pierwszy krok do kontrolowania kosztów. Sprawdzone metody, takie jak ustawianie budżetów i alertów, umożliwiają otrzymywanie e-maili z powiadomieniami, gdy wydatki zbliżają się do określonego limitu, co pozwala uniknąć niespodzianek.
Praktyczne ćwiczenie: łączenie konta rozliczeniowego
- Otwórz .
- Kliknij Połącz konto rozliczeniowe.

- Z menu wybierz Próbne konto rozliczeniowe Google Cloud Platform i kliknij Ustaw konto. (Jeśli nie widzisz menu, poczekaj minutę, aż środki zostaną zastosowane, i odśwież stronę).
Praktyczne wskazówki: ustawianie alertu dotyczącego budżetu (sprawdzona metoda)
Teraz, gdy płatności są aktywne, wykonajmy kluczową sprawdzoną metodę kontroli kosztów: ustawienie budżetu. Nie powoduje to wstrzymania usług po osiągnięciu określonej kwoty, ale wysyła e-maile z alertami, dzięki czemu zawsze wiesz, ile wydajesz.
- W menu po lewej stronie na stronie Płatności kliknij Budżety i alerty.
- U góry strony kliknij + UTWÓRZ BUDŻET.

- Nazwij budżet: nadaj mu prostą nazwę, np.
Workshop-Alert. - Zakres: pozostaw ustawienia domyślne, w których powinien być wybrany bieżący projekt. Kliknij Dalej.

- Kwota: w sekcji „Kwota budżetu” w przypadku opcji „Typ kwoty” wybierz Określona kwota. Wpisz niską kwotę, np.
10. Oznacza to, że nasz budżet wynosi 10 zł. Kliknij Dalej.
- Działania: w tym miejscu możesz ustawić alerty. Domyślnie alerty będą ustawione na moment, w którym wydatki przekroczą 50%, 90% i 100% kwoty budżetu (5, 9 i 10 zł).
- W sekcji „Powiadomienia e-mail” upewnij się, że zaznaczone jest pole Wysyłaj alerty e-mail do administratorów odpowiedzialnych za płatności i do użytkowników. Powiadomienia będą wysyłane na adres e-mail powiązany z Twoim kontem.
- Kliknij Zakończ.

Narzędzie do proaktywnego zarządzania kosztami zostało skonfigurowane. W przypadku projektu w świecie rzeczywistym jest to jeden z najważniejszych pierwszych kroków, który pozwala uniknąć niespodzianek finansowych.
Czym są usługi i dlaczego je włączamy?
Teraz, gdy masz już skonfigurowane centrum dowodzenia w prywatnym laboratorium, porozmawiajmy o dostępnym sprzęcie ciężkim. Google Cloud oferuje ponad 200 różnych usług, od baz danych po modele AI. Każda z nich jest nazywana usługą. Cloud Run to „Automatyczna usługa wysyłki i logistyki”, a Gemini to „Usługa wynalazków i prototypowania oparta na AI”. Aby korzystać z tych zaawansowanych usług, musisz najpierw włączyć w projekcie odpowiedni interfejs API (Application Programming Interface).

Wróćmy do analogii z magazynem i laboratorium. Wyobraź sobie, że Twój projekt Google Cloud to Twój warsztat w ogromnym magazynie. Warsztat jest wyposażony w różne zaawansowane stanowiska: do analizy AI, do wdrażania globalnego, do przechowywania danych itp. Ze względów bezpieczeństwa i wydajności główne przewody zasilające każde z tych specjalistycznych stanowisk pracy są domyślnie wyłączone.
Włączenie interfejsu API polega na podejściu do konkretnego stanowiska w laboratorium, np. „Stanowiska do prototypowania AI”, i przełączeniu głównego włącznika zasilania do pozycji „ON”.
Ale dlaczego wszystko jest domyślnie wyłączone? Jest to celowe rozwiązanie z kilku ważnych powodów:
- Bezpieczeństwo: wymusza zasadę minimalnego wymaganego poziomu uprawnień na poziomie projektu. Jeśli nie korzystasz z usługi, jej połączenia z projektem są nieaktywne, co zmniejsza potencjalną „powierzchnię ataku”.
- Zarządzanie i kontrola kosztów: rozpoczęcie korzystania z potencjalnie kosztownej usługi wymaga celowego działania, które można poddać audytowi. Zapobiega to przypadkowemu użyciu i pomaga organizacjom kontrolować, z jakich narzędzi korzystają ich zespoły.
- Prostota: utrzymuje środowisko projektu w czystości. Twoje uprawnienia i panele nie będą zawierać opcji usług, których nie zamierzasz używać.
Praktyczne ćwiczenie: inicjowanie środowiska
2. Zabezpieczanie aplikacji: kto (lub co) może kontrolować Twoją aplikację?
Wprowadzenie do koncepcji
Nasze aplikacje są dostępne w internecie, co jest fantastycznym osiągnięciem. Pojawia się jednak kluczowe pytanie: jak to w ogóle było możliwe? Podczas wdrażania kodu w tle doszło do serii bezpiecznych „uzgodnień” opartych na uprawnieniach. Ich zrozumienie jest kluczem do bezpieczeństwa w chmurze.
Zarządzanie tymi uprawnieniami odbywa się za pomocą usługi Identity and Access Management (IAM).
- Podstawowa formuła uprawnień Uprawnienia działają na podstawie prostej, ale skutecznej zasady: kto może co robić z którym zasobem.
- Dwa typy „kto” (podmiotów) W naszych warsztatach poznaliśmy do tej pory 2 podstawowe typy tożsamości:
- Użytkownicy: to Ty! tożsamość powiązana z osobą, np. osobiste konto Gmail;
- Konta usługi: są to specjalne tożsamości niepowiązane z osobami fizycznymi, które są przeznaczone dla Twoich aplikacji i usług. Można je traktować jako identyfikator kodu. Gdy jedna usługa Google Cloud (np. Cloud Build) musi wchodzić w interakcje z inną (np. Artifact Registry w celu zapisania kontenera), używa swojego konta usługi, aby udowodnić, że ma uprawnienia.
Po wdrożeniu dowolnej aplikacji używane były oba typy tożsamości:
- Twoje konto Użytkownik miało uprawnienia do rozpoczęcia wdrażania.
- Konto usługi usługi Cloud Build miało uprawnienia do kompilowania kodu i zapisywania powstałego kontenera.
Zarządzanie dostępem
Za pomocą konsoli IAM zbadamy uprawnienia, które umożliwiły wdrożenie, a następnie przyznamy określony dostęp innemu użytkownikowi.
- Dochodzenie: otwórz konsolę IAM
- Znajdowanie tożsamości (użytkownik)
- Na liście podmiotów zabezpieczeń znajdź swój adres e-mail. Zwróć uwagę, że jego rola to „Właściciel”. Rola Właściciel przyznaje pełne, nieograniczone uprawnienia do wykonywania dowolnych działań w projekcie. Dlatego masz uprawnienia do włączania interfejsów API i uruchamiania polecenia
gcloud run deploy.
- Na liście podmiotów zabezpieczeń znajdź swój adres e-mail. Zwróć uwagę, że jego rola to „Właściciel”. Rola Właściciel przyznaje pełne, nieograniczone uprawnienia do wykonywania dowolnych działań w projekcie. Dlatego masz uprawnienia do włączania interfejsów API i uruchamiania polecenia
- Znajdź tożsamość usługi (konto usługi)
- Teraz poszukaj podmiotu zabezpieczeń o nazwie takiej jak
[PROJECT_NUMBER]-compute@developer.gserviceaccount.com. Jest to domyślne konto usługi używane przez usługę Cloud Build. - Sprawdź jego rolę. Będzie ono miało rolę taką jak „Agent usługi Cloud Build”. Ta rola zawiera konkretne uprawnienia potrzebne do wykonywania zadań, np. pobierania kodu źródłowego i zapisywania obrazów kontenerów w rejestrze. Tożsamość, która wykonała większość pracy związanej z wdrożeniem.

- Teraz poszukaj podmiotu zabezpieczeń o nazwie takiej jak
- Zarządzanie dostępem (praktyczne zadanie)
- Teraz wykonajmy odpowiednie zadanie związane z bezpieczeństwem. Wyobraź sobie, że nowy współpracownik musi mieć możliwość monitorowania wydajności i sprawdzania logów 2 aplikacji, które właśnie wdrożyliśmy (
fact-app-manualifact-app-cli), ale ze względów bezpieczeństwa nie powinien mieć możliwości wdrożenia nowej wersji ani usunięcia tych aplikacji. - U góry strony Uprawnienia kliknij + Przyznaj dostęp.
- W polu Nowe podmioty zabezpieczeń wpisz fikcyjny adres e-mail, np.
dev-intern@example.com. - W menu Wybierz rolę użyj filtra, aby znaleźć i wybrać rolę „Wyświetlający Cloud Run”. Ta rola jest doskonałym przykładem zasady jak najmniejszych uprawnień. Przyznaje dostęp tylko do odczytu do usług Cloud Run i niczego więcej. (Możesz też skorzystać z opcji Pomóż mi wybrać role).
- Kliknij Zapisz.

- Teraz wykonajmy odpowiednie zadanie związane z bezpieczeństwem. Wyobraź sobie, że nowy współpracownik musi mieć możliwość monitorowania wydajności i sprawdzania logów 2 aplikacji, które właśnie wdrożyliśmy (
- Sprawdzanie wyniku
- Udało Ci się dodać nowego użytkownika i przypisać mu szczegółową rolę o najmniejszych uprawnieniach, która jest bezpośrednio związana z zasobami utworzonymi w ramach tych warsztatów. Mogą wyświetlać Twoje 2 aplikacje do sprawdzania faktów, ale nie mogą ich zmieniać. Wiesz już, jak konta użytkowników i konta usług współpracują ze sobą, aby tworzyć bezpieczne i podlegające kontroli środowisko chmurowe.
Teraz przećwiczmy przyznawanie uprawnień nie osobie, ale innej aplikacji lub usłudze. Wyobraź sobie zewnętrzne narzędzie automatyczne reprezentowane przez konto usługi vertex-express@..., które musi mieć możliwość korzystania z usług AI w naszym projekcie. Musimy przypisać mu odpowiednią rolę.
- Otwórz stronę Konta usługi:
- Na stronie Uprawnienia otwórz Konta usługi.
- Znajdź docelowe konto usługi:
- Na liście kont usługi znajdź konto o nazwie
vertex-express@ecstatic-acumen-{PROJECT_NUMBER}-c9.iam.gserviceaccount.com. (Zastąp{PROJECT_NUMBER}rzeczywistym numerem projektu). Jest to tożsamość, której chcemy przyznać uprawnienia.
- Na liście kont usługi znajdź konto o nazwie
- Zarządzanie uprawnieniami konta usługi:
- W kolumnie Działanie po prawej stronie kliknij trzy kropki, aby wyświetlić menu.
- Aby zarządzać tym, co może robić to konto usługi, kliknij ZARZĄDZAJ UPRAWNIENIAMI.
- Przyznaj rolę „Użytkownik Vertex AI”:
- W menu Przypisz role użyj filtra, aby znaleźć i wybrać rolę „Użytkownik Vertex AI”.
- Kliknij Zapisz.

Udało Ci się przejść ze strony konta usługi do właściwej strony uprawnień na poziomie projektu i przyznać mu uprawnienia do korzystania z funkcji AI w projekcie.
3. Tworzenie kodu za pomocą asystenta AI
Wprowadzenie do koncepcji
Każda aplikacja zaczyna się od kodu. Tradycyjnie jest to najbardziej czasochłonna część procesu. Dziś będziemy współpracować z partnerem AI, Gemini, aby przyspieszyć ten proces. Zanim jednak napiszemy pierwsze polecenie, warto poznać ofertę narzędzi AI w Google Cloud.
Oferty AI od Google można podzielić na 3 główne kategorie, od najprostszych do najbardziej zaawansowanych:
Możesz korzystać z „Creative Engine” (Gemini) za pomocą 2 głównych interfejsów, z których każdy jest przeznaczony do innego celu.
- Google AI Studio (
aistudio.google.com)- Opis: bezpłatne narzędzie internetowe do szybkiego prototypowania i eksperymentowania z Gemini. To najszybszy sposób na rozpoczęcie pisania promptów i sprawdzanie możliwości modeli.
- Jak to działa: możesz zacząć korzystać z tej funkcji, używając tylko konta Google. Aby używać go w aplikacji, wygeneruj klucz interfejsu API. Aby używać go w tych warsztatach, musisz włączyć w projekcie usługę „Generative Language API”.
- Analogia: AI Studio to biblioteka publiczna lub otwarty warsztat. Możesz wejść i zacząć bezpłatnie eksperymentować z narzędziami.
- Vertex AI
- Opis: kompleksowa platforma Google Cloud do zarządzania całym cyklem życia uczenia maszynowego. To pełne środowisko pracy, w którym możesz korzystać z modeli podstawowych, takich jak Gemini, a także tworzyć, trenować i wdrażać własne modele systemów uczących się od podstaw. Zapewnia zabezpieczenia, skalowalność i zarządzanie na poziomie przedsiębiorstwa. Oferuje też wersję tych samych narzędzi klasy korporacyjnej, w pełni zintegrowaną z projektem Google Cloud.
- Jak to działa: korzysta z tych samych zaawansowanych modeli, ale dziedziczy wszystkie funkcje zabezpieczeń, kontroli dostępu (IAM) i zarządzania danymi w Twoim projekcie. Jest to usługa, którą włączyliśmy w części 1, włączając interfejs API
aiplatform.googleapis.com. - Analogia: Vertex AI to prywatne, bezpieczne, firmowe laboratorium badawczo-rozwojowe. Wszystkie Twoje działania są rejestrowane, zabezpieczane i powiązane z innymi zasobami projektu.
Praktyczne ćwiczenie: generowanie kodu aplikacji w Vertex AI Studio
Zobaczmy, co się stanie, gdy utworzymy aplikację za pomocą narzędzi wizualnych w Vertex AI.
- Otwórz Vertex AI Studio:
- Wygeneruj witrynę:
- W polu prompta wpisz dokładnie to samo żądanie, którego użyjemy później:
Create the code for a simple web application that shows Halloween fun facts. The application should be built using the Python functions_framework for Cloud Run. The entry point function must be named 'hello_http'. When a user visits the main page, the server should randomly display one fact from a list. The page should have a separate 'index.html' file for the structure and a 'style.css' file to give it a spooky theme
- Naciśnij Enter. Model wygeneruje kod, prawdopodobnie w 3 osobnych blokach: jeden dla języka Python (
main.py), jeden dla HTML (index.html) i jeden dla CSS (style.css).
Nie zamykaj tej karty przeglądarki! W następnej sekcji musisz skopiować kod z tych 3 bloków. Zwróć uwagę, że AI prawidłowo rozdzieliła pliki. To dobra praktyka, ale jak zobaczymy, wymaga ona kilku ręcznych kroków w procesie wdrażania.
4. Wdrażanie na całym świecie za pomocą Cloud Run
Wprowadzenie do koncepcji
Nasz kod został wygenerowany, ale jest tylko tekstem w przeglądarce. Aby obsługiwać klientów, musi działać na serwerze. Cloud Run to platforma „bezserwerowa”, co oznacza, że Ty dostarczasz kod, a Google zajmuje się resztą: serwerami, skalowaniem i bezpieczeństwem. Najważniejszą funkcją jest skalowanie do zera – jeśli nikt nie odwiedza Twojej aplikacji, nie płacisz za czas bezczynności.
- Co to jest „Serverless”? Tradycyjnie wdrożenie aplikacji wiązało się z wynajęciem serwera (maszyny wirtualnej), zainstalowaniem systemu operacyjnego, skonfigurowaniem sieci i zabezpieczeń oraz ciągłym utrzymywaniem tych elementów. Bezserwerowość to nowoczesne podejście do chmury, w którym deweloper skupia się tylko na kodzie. Przekazujesz kod do usługi takiej jak Cloud Run, a ona zajmuje się resztą: serwerami, skalowaniem, bezpieczeństwem i siecią.
- Jak działa Cloud Run: magia skalowania. Gdy wdrażasz aplikację w Cloud Run, usługa ta pakuje Twój kod w kontener (standardowy, przenośny pakiet aplikacji i wszystkich jej zależności). Gdy użytkownik odwiedzi adres URL Twojej aplikacji, Cloud Run natychmiast uruchomi kontener, aby obsłużyć żądanie. Jeśli jednocześnie odwiedzi ją tysiąc użytkowników, automatycznie uruchomi się tysiąc kopii. Najważniejszą funkcją jest skalowanie do zera. Gdy nikt nie korzysta z aplikacji, Cloud Run zmniejsza liczbę uruchomionych kontenerów do zera. Oznacza to, że za czas bezczynności nie płacisz nic, co sprawia, że jest to niezwykle opłacalne rozwiązanie.
W przypadku pierwszego wdrożenia użyjemy edytora wbudowanego w konsoli Cloud Run, ręcznie kopiując kod.
Praktyczne ćwiczenie: wdrażanie aplikacji
- Uruchom kreator tworzenia Cloud Run:
- Skonfiguruj usługę:
- Wybierz Aby utworzyć funkcję, skorzystaj z edycji bezpośredniej.
- Nadaj usłudze nazwę:
fact-app-manual. - Wybierz środowisko wykonawcze
Python 3.13. - Wybierz Region
us-central1. - Kliknij Zezwól na dostęp publiczny.
- Wszystkie pozostałe ustawienia pozostaw domyślne.
- Na dole kliknij przycisk UTWÓRZ.

- Wpisz kod:
- Zobaczysz edytor z domyślnymi plikami
main.pyirequirements.txt. - main.py: otwórz kartę Vertex AI Studio. Skopiuj cały blok kodu Pythona. Wróć do edytora Cloud Run i zastąp domyślną zawartość
main.pyskopiowanym właśnie kodem. - requirements.txt:* W edytorze kliknij plik
requirements.txt. Kod Pythona wymagafunctions-framework. Zastąp zawartość pliku tym kodem:functions-framework - index.html: w eksploratorze plików edytora kliknij „+”, aby dodać nowy plik. Nadaj plikowi nazwę
index.html. Otwórz kartę Vertex AI Studio, skopiuj blok kodu HTML i wklej go do nowego plikuindex.html. - style.css: kliknij „+”, aby dodać nowy plik. Nazwij go
style.css. Otwórz kartę Vertex AI Studio, skopiuj blok kodu CSS i wklej go do nowego plikustyle.css.
- Zobaczysz edytor z domyślnymi plikami
- Wdróż usługę:
- Gdy trzy pliki będą już na swoim miejscu, kliknij przycisk ZAPISZ I WDROŻ .
- Dostęp do aplikacji w wersji produkcyjnej:
- Wdrażanie potrwa kilka minut. Po zakończeniu procesu pojawi się strona szczegółów usługi z publicznym adresem URL u góry.
- Kliknij ten adres URL. Twoja aplikacja jest już aktywna. Działa, ale wymagało to dużo ręcznego kopiowania i wklejania.

5. Optymalizacja przepływu pracy programisty
Konsola jest świetna do nauki, ale powolna w przypadku iteracyjnego rozwoju. Teraz przyjrzymy się preferowanemu przez dewelopera procesowi, w którym za pomocą Cloud Shell i interfejsu Gemini CLI cały wieloetapowy proces przekształca się w uproszczoną rozmowę. 
Czym jest Cloud Shell i interfejs wiersza poleceń Gemini?
Cloud Shell to pełnoprawny komputer z systemem Linux w przeglądarce, na którym są już zainstalowane narzędzia dla programistów, takie jak gcloud CLI (pilot do Google Cloud).
Interfejs wiersza poleceń Gemini to interaktywny asystent kodowania oparty na AI, który działa w terminalu.
Czym są rozszerzenia do Gemini?
Interfejs wiersza poleceń Gemini można porównać do zaawansowanego smartfona. Sama w sobie jest bardzo przydatna. Rozszerzenia są podobne do aplikacji, które instalujesz ze sklepu z aplikacjami. Dzięki nim interfejs Gemini CLI zyskuje nowe, specjalistyczne możliwości, których nie ma domyślnie. Rozszerzenie nanobanana to na przykład „aplikacja”, która łączy interfejs CLI Gemini z zaawansowanymi modelami Google do generowania obrazów, co pozwala nam tworzyć obrazy bezpośrednio z wiersza poleceń.
Praktyczne ćwiczenie: uproszczony przepływ pracy
- Generowanie klucza interfejsu API
- Aktywuj i skonfiguruj Cloud Shell:
- U góry konsoli Google Cloud kliknij ikonę Aktywuj Cloud Shell
>_.
- Uruchom w terminalu te polecenia, aby skonfigurować środowisko. Pamiętaj, aby zastąpić identyfikator projektu własnym identyfikatorem.
Ustaw klucz NANOBANANA_GOOGLE_API_KEY. Zastąp go swoim kluczem interfejsu API. (Powiedz# Set your Project ID export PROJECT_ID="[your-project-id-goes-here]"Y, aby kontynuować instalację). W terminalu uruchom to polecenie, aby zainstalować rozszerzenie:gcloud config set project $PROJECT_ID # REPLACE with your API Key. export NANOBANANA_GOOGLE_API_KEY="[your-api-key-goes-here]"# Configure the CLI to use your project with Vertex AI export GOOGLE_CLOUD_PROJECT=$PROJECT_ID export GOOGLE_CLOUD_LOCATION=us-central1 export GOOGLE_GENAI_USE_VERTEXAI=true # Install the image generation extension gemini extensions install https://github.com/gemini-cli-extensions/nanobanana
- U góry konsoli Google Cloud kliknij ikonę Aktywuj Cloud Shell
- Użyjemy interfejsu wiersza poleceń Gemini, zaawansowanego interfejsu wiersza poleceń, który działa jako asystent AI do kodowania. Umożliwia opisanie prostym językiem kodu, którego potrzebujemy, a następnie wygenerowanie struktury, co znacznie przyspiesza proces tworzenia.
- Rozpocznij sesję interaktywnej AI:
- Utwórzmy nowy katalog dla naszego projektu i uruchommy interfejs wiersza poleceń Gemini w trybie interaktywnym. Uruchom to polecenie w terminalu.
mkdir ~/2025-website cd ~/2025-website cat <<EOF > .env GOOGLE_CLOUD_PROJECT=$PROJECT_ID GOOGLE_CLOUD_LOCATION=$GOOGLE_CLOUD_LOCATION GOOGLE_GENAI_USE_VERTEXAI=true NANOBANANA_GOOGLE_API_KEY=$NANOBANANA_GOOGLE_API_KEY EOF clear gemini --yolo
- Utwórzmy nowy katalog dla naszego projektu i uruchommy interfejs wiersza poleceń Gemini w trybie interaktywnym. Uruchom to polecenie w terminalu.
- Generowanie i iterowanie aplikacji:
- Rozpoczęła się sesja czatu z asystentem AI. Wklej ten prompt, aby wygenerować całą witrynę za pomocą jednego polecenia:
Write a simple web app that shows Halloween fun facts using the Python Flask. When a user visits the main page, it should show one random fact. Include a button that fetches and displays a new fact when clicked. Create a simple, clean index.html, a separate style.css with a spooky theme, and a requirements.txt file. After creating the files, attempt to start the web app locally on port 8080. - Testuj lokalnie: AI utworzy pliki i uruchomi serwer WWW. (Czasami ładowanie nie ustaje. Jeśli widzisz, że serwer próbuje się uruchomić, możesz przejść do następnego kroku. )
- Na pasku narzędzi Cloud Shell kliknij ikonę Podgląd w przeglądarce i wybierz Podejrzyj na porcie 8080. Twoja witryna pojawi się w nowej karcie.

- W interfejsie wiersza poleceń Gemini naciśnij
Esc, aby anulować żądanie lub poprosić interfejs wiersza poleceń Gemini oStop the web server.
- Rozpoczęła się sesja czatu z asystentem AI. Wklej ten prompt, aby wygenerować całą witrynę za pomocą jednego polecenia:
- Zaktualizuj stronę internetową za pomocą obrazów wygenerowanych przez AI:
- Teraz użyjemy rozszerzenia. Polecenie rozpoczynające się od znaku
/to „polecenie rozpoczynające się ukośnikiem” skierowane do narzędzia, a nie prompt dla AI./generate 3 images of spooky halloween fun - Rozszerzenie utworzy 3 obrazy. Teraz poprośmy AI o zmodyfikowanie witryny, aby z nich korzystała.
Update the website so it will display and rotate between the 3 newly generated images each time the button is clicked. And do NOT start the server.
- Teraz użyjemy rozszerzenia. Polecenie rozpoczynające się od znaku
- Przygotowanie do wdrożenia:
- Cloud Run wdraża kod za pomocą kontenerów.
Dockerfileto przepis na utworzenie kontenera. Poprośmy AI o utworzenie takiego tekstu.Create a Dockerfile suitable for deploying this Python Flask app to Cloud Run.
- Cloud Run wdraża kod za pomocą kontenerów.
- Wdrażanie za pomocą jednego polecenia:
- Aby zamknąć interfejs wiersza poleceń Gemini, naciśnij dwukrotnie
CtrlC. Możesz też wpisać/quitw prompcie. - Teraz użyj interfejsu wiersza poleceń
gcloud, aby wdrożyć całą aplikację z bieżącego katalogu.gcloud run deploy fact-app-cli \ --source . \ --region us-central1 \ --allow-unauthenticated
- Aby zamknąć interfejs wiersza poleceń Gemini, naciśnij dwukrotnie
- Zobacz różnicę:
- Po kilku minutach otrzymasz nowy adres URL w pełni funkcjonalnej witryny wygenerowanej przez AI. Otwórz konsolę Cloud Run. Zobaczysz obie usługi:
fact-app-manualifact-app-cli. Właśnie udało Ci się poznać szybkość i moc przepływu pracy dewelopera w wierszu poleceń.
- Po kilku minutach otrzymasz nowy adres URL w pełni funkcjonalnej witryny wygenerowanej przez AI. Otwórz konsolę Cloud Run. Zobaczysz obie usługi:
Gratulacje
Udało Ci się przejść cały cykl życia rozwoju w Google Cloud. Zaczęliśmy od pustego projektu, a teraz:
- skonfigurowano bezpieczny projekt z płatnościami;
- użycie asystenta AI do napisania pełnego zgłoszenia;
- wdrożono tę aplikację na skalowalnej platformie bezserwerowej.
- dowiedzieć się, jak zarządzać bezpieczeństwem za pomocą uprawnień;
Masz teraz podstawowe umiejętności, które pozwolą Ci tworzyć jeszcze bardziej złożone i zaawansowane aplikacje w Google Cloud.

