Proces automatycznej obsługi administracyjnej pozwala wdrożyć serwer tagowania w Cloud Run za pomocą kilku kliknięć. Jeśli chcesz udostępnić serwer tagowania w w innych środowiskach, możesz to zrobić ręcznie. Serwer tagowania to serwer Node.js w obrazie Dockera.
Ręczne udostępnianie serwera tagowania wymaga udostępnienia po stronie serwera klastra tagowania (SST) i serwera podglądu. Klaster SST to dla wszystkich żądań wysyłanych do serwera tagowania i będzie przetwarzać żądania jako opisane we wprowadzeniu do tagowania po stronie serwera. Serwer podglądu to potrzebne do wyświetlenia podglądu kontenera.
Ilustracja 1 przedstawia interakcję danych między tagowaniem i serwer podglądu.
Rysunek 1. Diagram serwerów tagowania i przepływu danych z serwera podglądu.
Z tego przewodnika dowiesz się, jak:
- Wyświetl wszystkie dostępne ustawienia obrazu Dockera.
- (Opcjonalnie) Dołącz dane logowania do BigQuery
- Ręcznie udostępnij serwer podglądu przy użyciu obrazu Dockera SST.
- Udostępnij ręcznie klaster SST przy użyciu obrazu SST Dockera.
- Sprawdź, czy serwer podglądu i klaster SST są prawidłowo skonfigurowane.
- Po udostępnieniu serwera tagowania aktualizuj jego wersję.
Aby uruchomić polecenia Dockera podane w tym przewodniku, musisz najpierw zainstalować Dockera na swoim komputerze.
Wyświetl wszystkie dostępne ustawienia obrazu Dockera
Obraz Dockera serwera tagowania możesz znaleźć pod tym adresem URL:
gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
Serwer tagowania i serwer podglądu używają tego samego obrazu Dockera z różnymi flagami. W tej sekcji dowiesz się, jak wyszukać wszystkie dostępne ustawienia. których można używać z obrazem Dockera.
Aby zobaczyć wszystkie dostępne ustawienia, uruchom następujące polecenia za pomocą narzędzie wiersza poleceń docker:
docker run gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable server_bin.js --help
(Opcjonalnie) Dołącz dane logowania do Google Cloud
Aby używać interfejsu API BigQuery
lub Firestore
poza Google Cloud, musisz
podać dane logowania konta usługi, które są uprawnione do uzyskiwania dostępu do tych
i zasobami Google Cloud.
- Aby utworzyć konto usługi z danymi BigQuery, postępuj zgodnie z instrukcjami w tym przewodniku.
rolę Edytujący w przypadku dostępu typu
BigQuery
lub Użytkownik Cloud Datastore w przypadku:Firestore
uzyskuje dostęp do swoich danych logowania JSON i wyeksportuje je z nazwą plikulocal_service_account_key.json
- Zamontuj dane logowania JSON w woluminie dostępnym dla obrazu. Za pomocą
docker run
możesz określić-v local_service_account_key.json:/app/service_account_key.json
, aby zamontować poświadczenia w obrazie. - Wskaż zmienną środowiskową
GOOGLE_APPLICATION_CREDENTIALS
na danych logowania. - Opcjonalnie podaj identyfikator projektu Google Cloud w
GOOGLE_CLOUD_PROJECT
zmienną środowiskową pozwalającą serwerowi tagowania domyślnie wybrać projekt. Uruchom serwer. To polecenie uruchamia serwer tagowania z zawarte dane logowania:
docker run -v local_service_account_key.json:/app/service_account_key.json \ -p 8080:8080 \ -e GOOGLE_APPLICATION_CREDENTIALS='/app/service_account_key.json' \ -e GOOGLE_CLOUD_PROJECT='<your project id>' \ -e CONTAINER_CONFIG='<config string>' \ gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
W zależności od systemu, w którym jest wdrożony serwer tagowania, może być różne sposoby podłączenia danych logowania. np. Kubernetes lub Docker Swarm udostępnia przewodniki dotyczące zarządzania obiektami tajnymi. Więcej informacji znajdziesz w odpowiednich w przewodniku systemowym.
Stosuj sprawdzone metody ochrony swoich danych logowania.
Ręczne konfigurowanie serwera podglądu
Serwer podglądu umożliwia wyświetlenie podglądu kontenera serwera. Aby uruchomić serwer podglądu, uruchom obraz Dockera z tymi zmiennymi środowiska przekazanymi do środowiska Dockera.
Wymagane ustawienia
CONTAINER_CONFIG
– ciąg konfiguracji kontenera serwera. W Menedżera tagów, przejdź do obszaru roboczego kontenera serwera i kliknij przycisk identyfikator kontenera w prawym górnym rogu strony. Kliknij Skonfiguruj ręcznie. serwera tagowania, by znaleźć wartość Container Config.RUN_AS_PREVIEW_SERVER
– ustaw tę wartość natrue
, aby udostępnić serwer jako serwera podglądu.
Przykład użycia narzędzia wiersza poleceń Dockera
Aby udostępnić serwer podglądu lokalnie, uruchom to polecenie:
docker run -p 8080:8080 -e CONTAINER_CONFIG='<config string>' -e RUN_AS_PREVIEW_SERVER=true gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
Powinna Ci być widoczna odpowiedź 200 w przypadku żądania wysłanego do
http://localhost:8080/healthz
Opcjonalnie użyj zmiennej środowiskowej PORT
, aby zmienić port.
Sprawdzone metody
- Musisz wdrożyć dokładnie 1 serwer podglądu. Nie konfiguruj autoskalowania więcej niż 1 instancję.
- Po skonfigurowaniu serwera podglądu przy użyciu Dockera skonfiguruj adres URL HTTPS, aby i wskaż serwer podglądu. Jest to wymagane do skonfigurowania klastra SST.
- Twój system równoważenia obciążenia lub sieć CDN musi mieć czas oczekiwania dłuższy niż 20 sekund, w przeciwnym razie tryb podglądu nie będzie działać prawidłowo.
Samodzielnie skonfiguruj klaster z tagowaniem po stronie serwera
Klaster SST służy jako punkt wejścia, a serwery proxy pełnią funkcję podglądu żądań wysyłanych do i obsługuje wszystkie inne żądania zgodnie z opisem Wprowadzenie do tagowania po stronie serwera. Użyj tych wymaganych ustawień za pomocą obrazu Dockera serwera tagowania, aby udostępnić klaster SST które obsługuje Dockera.
Wymagane ustawienia
CONTAINER_CONFIG
– ciąg znaków konfiguracji kontenera serwera. W Menedżerze tagów przejdź do obszaru roboczego kontenera na serwerze i w prawym górnym rogu strony kliknij identyfikator kontenera. Kliknij Skonfiguruj ręcznie. serwera tagowania, by znaleźć wartość Container Config.PREVIEW_SERVER_URL
– adres URL HTTPS serwera podglądu. To ustawienie należy ustawiać tylko na potrzeby obsługi administracyjnej serwera tagowania. Nie jest wymagany dla i udostępnianie serwera podglądu. Zapoznaj się z sekcją powyżej, w której znajdziesz przewodnik na temat: podczas konfigurowania serwera podglądu.
Przykład użycia narzędzia wiersza poleceń Docker
Aby lokalnie udostępnić pojedynczy serwer tagowania, uruchom to polecenie:
docker run -p 8080:8080 -e CONTAINER_CONFIG='<config string>' -e PREVIEW_SERVER_URL='<HTTPS preview server url>' gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
Powinna pojawić się odpowiedź 200 w odpowiedzi na żądanie wysłane do http://localhost:8080/healthz
.
Opcjonalnie zmień port za pomocą zmiennej środowiskowej PORT
.
Sprawdzone metody
- Serwery z tagowaniem po stronie serwera można udostępnić jako pojedynczy serwer
jako klaster. Zalecamy udostępnienie go jako klastra, aby
dostępności, skalowalności i wydajności. Pamiętaj, że gdy
udostępnianie jako klaster, każda instancja serwera musi być skonfigurowana z
tych samych zmiennych środowiskowych
CONTAINER_CONFIG
iPREVIEW_SERVER_URL
. - Pamiętaj, aby przekierować wdrożenie klastra SST na nową subdomenę odrębną od subdomeny, z której korzysta aplikacja. Jeśli na przykład aplikacja obsługuje ruch internetowy pod adresem example.com, użyj parametru subdomenę, np. analytics.example.com dla serwera tagowania.
- Po skonfigurowaniu klastra SST przy użyciu Dockera skonfiguruj adres URL HTTPS, aby i wskaż klaster SST.
- Co jakiś czas ponownie uruchamiaj serwery, aby mieć pewność, że najnowsze aktualizacje kodu dla SST. Jeśli tego nie zrobisz, może to spowodować brak zgodności nowych funkcji SST. Jednym ze sposobów sprawdzenia, kiedy serwer musi ponowne uruchomienie jest konieczne do skonfigurowania testów żywotności, co zostało opisane poniżej. Pamiętaj też, że wszelkie opublikowane aktualizacje kontenera serwera nadal będą stosowane bez ponownego uruchamiania.
- Wykorzystaj istniejący punkt końcowy
/healthz
(np.https://analytics.example.com/healthz
) na Twoich serwerach tagowania, aby skonfigurować pod kątem emocji. Nieprawidłowa odpowiedź oznacza, że serwer powinien być Zrestartowano. - Kontener Dockera zawiera domyślne polecenie kontroli stanu –
HEALTHCHECK CMD ["/nodejs/bin/node", "/app/health_checker_bin.js"]
– które wykonuje zapytanie Okresowo/healthz
punkt końcowy. Jeśli zależy Ci na sprawdzaniu stanu Dockera, możesz zmienić ustawienia, wykonując instrukcje Dockera. - Jeśli serwer podglądu i serwer tagowania mają ten sam punkt początkowy, hostuj tag
serwera podglądu do innej ścieżki niż serwer tagowania. Podaj wartość
PREVIEW_SERVER_URL
wraz ze ścieżką. - Udostępnione serwery powinny mieć maksymalnie 1 procesor wirtualny. Dodatkowe procesory wirtualne nie są i negatywnie wpływa na autoskalowanie.
Weryfikacja
Skonfiguruj adres URL kontenera serwera
W Menedżerze tagów przejdź do kontenera serwera. W sekcji Administracja > Kontener Ustawienia umieszczają adres URL serwera tagowania w polu URL kontenera serwera. i kliknij Zapisz.
Weryfikacja w trybie podglądu
W obszarze roboczym Menedżera tagów wyświetl podgląd kontenera, klikając Podgląd. sprawdź, czy wczytuje się strona podglądu. Na innej karcie przeglądarki przejdź do dowolnej ścieżki w adres URL kontenera serwera. Jeśli strona podglądu zawiera wysłane żądanie, oznacza to, że wszystko jest prawidłowo skonfigurowane.
Jeśli na jeden serwer tagowania masz zmapowanych wiele subdomen i chcesz
aby wyświetlić podgląd w każdej subdomenie, dodaj dodatkowe adresy URL kontenerów serwera w kolumnie
Administracja > Ustawienia kontenerów. Jeśli podasz kilka adresów URL, wszystkie ścieżki adresów URL
musi pasować (ciąg informacji występujący po nazwie domeny). Dla:
możesz wyświetlić podgląd w witrynach example.com/abc
i example2.com/abc
, ale
nie można wyświetlić podglądu w example.com/abc
i example2.com/def
. Jeśli
obok przycisku Podgląd zobaczysz ikonę, która umożliwia wyświetlenie
adres URL strony, na której pojawi się podgląd.
Aktualizowanie wersji serwera tagowania
Obraz gtm-cloud-image zawiera Node.js oraz biblioteki wymagane dla do działania serwera tagowania. Obraz Dockera jest okresowo aktualizowany poprawek zabezpieczeń i nowych funkcji. Zalecamy co najmniej zaktualizowanie serwera tagowania w przypadku każdej wersji głównej (np. aktualizacja z 1.x.x do 2.x.x).
Aby zaktualizować obraz Dockera:
- Pobierz aktualną wersję obrazu ze strony
gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
. - Wdróż serwer z tymi samymi ustawieniami co w poprzednim wdrożeniu.
- Zaktualizuj serwer podglądu pojedynczego i wszystkie serwery tagowania w klastrze.
- Wyłącz wszystkie stare serwery.
Aby sprawdzić, czy aktualizacja się powiodła:
- W kontenerze serwera kliknij przycisk Podgląd, aby rozpocząć nowy debuguj i wyślij żądanie na osobnej karcie.
- W sekcji Podsumowanie kliknij kartę Konsola i upewnij się, że nie ma żadnych komunikatów z prośbą o zaktualizowanie serwera tagowania.
Menedżer tagów może wyświetlać komunikaty z prośbą o zaktualizowanie serwera tagowania przez okres do 1 dnia po jego zaktualizowaniu. Jednakże wyświetli aktualny komunikat o wersji serwera tagowania.