Korzystając z automatycznego procesu udostępniania, możesz za pomocą zaledwie kilku kliknięć wdrożyć serwer tagowania do App Engine. Jeśli chcesz udostępniać serwer tagowania w innych środowiskach, możesz zrobić to ręcznie. Serwer tagowania to serwer Node.js wewnątrz obrazu Dockera.
Ręczne udostępnianie serwera tagowania wymaga oddzielnego udostępniania klastra tagowania po stronie serwera (SST) i serwera podglądu. Klaster SST to punkt wejścia wszystkich żądań do serwera tagowania i będzie obsługiwać żądania opisane w artykule Wprowadzenie do tagowania po stronie serwera. Serwer podglądu jest potrzebny do wyświetlenia podglądu kontenera.
Rysunek 1 przedstawia ilustrację interakcji między serwerami tagowania a serwerem podglądu.
Rysunek 1. Schemat serwerów tagowania i przepływu danych wyświetlanych na serwerze podglądu
Z tego przewodnika dowiesz się, jak:
- Wyświetl wszystkie dostępne ustawienia obrazu Dockera.
- (Opcjonalnie) Uwzględnij dane logowania do BigQuery
- Ręcznie udostępnij serwer podglądu za pomocą obrazu Dockera SST.
- Ręcznie skonfiguruj klaster SST za pomocą obrazu Dockera SST.
- Sprawdź, czy serwer podglądu i klaster SST są prawidłowo skonfigurowane.
- Po udostępnieniu serwera zaktualizuj wersję serwera.
Aby uruchamiać polecenia Dockera w tym przewodniku, musisz najpierw zainstalować na komputerze Dockera.
Wyświetl wszystkie dostępne ustawienia obrazu Dockera
Obraz Dockera serwera tagowania można 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żyć z obrazem Dockera.
Aby wyświetlić wszystkie dostępne ustawienia, uruchom następujące polecenie, korzystając z narzędzia wiersza poleceń Dockera:
docker run gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable server_bin.js --help
(Opcjonalnie) Uwzględnij dane logowania do Google Cloud
Aby korzystać z interfejsu BigQuery
lub Firestore
API poza Google Cloud, musisz podać dane logowania do konta usługi, które mają uprawnienia dostępu do tych zasobów.
- Wykonaj czynności opisane w tym przewodniku, aby utworzyć konto usługi z rolą Edytora danych BigQuery w przypadku dostępu do
BigQuery
albo rolę Użytkownik Cloud Datastore w przypadku dostępuFirestore
i wyeksportować dane logowania JSON o nazwie plikulocal_service_account_key.json
. - Podłącz dane logowania JSON w woluminie dostępnym dla obrazu. Za pomocą metody
docker run
możesz określić właściwość-v local_service_account_key.json:/app/service_account_key.json
, aby podłączyć dane logowania na obrazie. - Wskaż zmienną środowiskową
GOOGLE_APPLICATION_CREDENTIALS
w danych logowania. - Opcjonalnie podaj identyfikator projektu Google Cloud w zmiennej środowiskowej
GOOGLE_CLOUD_PROJECT
, aby serwer tagowania domyślnie wybierał projekt. Uruchom serwer. To polecenie uruchamia serwer tagowania z uwzględnieniem danych 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 tego, w którym systemie jest wdrożony serwer tagowania, dane logowania mogą być podłączone na różne sposoby. Na przykład Kubernetes i Docker Swarm zawierają przewodniki zarządzania obiektami tajnymi. Więcej informacji znajdziesz w odpowiednim przewodniku dotyczącym systemu.
Aby chronić dane logowania, postępuj zgodnie ze sprawdzonymi metodami.
Ręczne udostępnianie serwera podglądu
Serwer podglądu pozwala wyświetlić podgląd kontenera serwera. Aby uruchomić serwer podglądu, uruchom obraz Dockera z tymi zmiennymi środowiskowymi przekazanymi do środowiska Dockera.
Ustawienia wymagane
CONTAINER_CONFIG
– ciąg konfiguracji kontenera kontenera. W Menedżerze tagów przejdź do obszaru roboczego kontenera serwera i kliknij identyfikator kontenera w prawym górnym rogu strony. Kliknij Ręczne udostępnianie serwera tagowania, aby znaleźć wartość Konfiguracja kontenera.RUN_AS_PREVIEW_SERVER
– ustaw tę wartość natrue
, aby udostępnić serwer jako serwer 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 być widoczna odpowiedź 200 z żądania do http://localhost:8080/healthz
. Opcjonalnie użyj portu środowiska PORT
, aby zmienić port.
Sprawdzone metody
- Musisz wdrożyć dokładnie 1 serwer podglądu. Nie konfiguruj autoskalowania powyżej 1 instancji.
- Gdy skonfigurujesz serwer podglądu za pomocą Dockera, skonfiguruj adres URL HTTPS, aby wskazywał serwer podglądu. Jest to konieczne do skonfigurowania klastra SST.
Ręczne udostępnianie klastra tagowania po stronie serwera
Klaster SST służy jako punkt wejścia, przesyła żądania serwerów proxy do serwera podglądu i obsługuje wszystkie pozostałe żądania zgodnie z artykułem Wprowadzenie do tagowania po stronie serwera. Użyj następujących wymaganych ustawień razem z obrazem Dockera serwera tagowania, aby udostępnić klaster SST w dowolnym środowisku obsługującym tę platformę.
Ustawienia wymagane
CONTAINER_CONFIG
– ciąg konfiguracji kontenera kontenera. W Menedżerze tagów przejdź do obszaru roboczego kontenera serwera i kliknij identyfikator kontenera w prawym górnym rogu strony. Kliknij Ręczne udostępnianie serwera tagowania, aby znaleźć wartość Konfiguracja kontenera.PREVIEW_SERVER_URL
– adres URL HTTPS serwera podglądu. To ustawienie należy ustawiać tylko na potrzeby obsługi serwera tagowania i nie trzeba go udostępniać do obsługi serwera podglądu. Powyższe instrukcje konfigurowania serwera podglądu znajdziesz powyżej w sekcji.
Przykład użycia narzędzia wiersza poleceń Dockera
Aby udostępnić jeden serwer tagowania lokalnie, wykonaj to:
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 być widoczna odpowiedź 200 z żądania na http://localhost:8080/healthz
.
Opcjonalnie użyj portu środowiska PORT
, aby zmienić port.
Sprawdzone metody
- Serwery tagowania po stronie serwera można udostępniać jako pojedynczy serwer lub klaster. Zalecamy udostępnienie go jako klastra, który zapewni większą dostępność, skalowalność i wydajność. Pamiętaj, że przy obsłudze administracyjnej jako klastra każda instancja serwera musi być skonfigurowana za pomocą tych samych zmiennych środowiskowych
CONTAINER_CONFIG
iPREVIEW_SERVER_URL
. - Pamiętaj, aby wskazać wdrożenie klastra SST w nowej subdomenie w swojej witrynie, która jest inna niż subdomena obsługująca Twoją aplikację. Jeśli np. aplikacja obsługuje ruch internetowy na stronie example.com, do serwera tagowania użyj subdomeny, takiej jak analytics.example.com.
- Gdy skonfigurujesz klaster SST przy użyciu Dockera, skonfiguruj URL HTTPS, by wskazywał klaster SST.
- Pamiętaj, aby co jakiś czas ponownie uruchamiać serwery, aby mieć pewność, że na serwerach SST są dostępne najnowsze aktualizacje kodu. Jeśli tego nie zrobisz, nowe funkcje SST mogą być niezgodne z funkcjami. Jednym ze sposobów określenia, kiedy serwer musi się ponownie uruchomić, jest skonfigurowanie testów ważności, co wyjaśniamy poniżej. Pamiętaj też, że wszystkie opublikowane aktualizacje kontenera serwera zostaną zastosowane bez ponownego uruchamiania.
- Wykorzystaj istniejący punkt końcowy
/healthz
(np.https://analytics.example.com/healthz
) na serwerach tagowania, aby skonfigurować kontrole dostępności. Niepoprawna odpowiedź wskazuje, że serwer należy ponownie uruchomić. - Kontener Dockera zawiera domyślne polecenie kontroli stanu –
HEALTHCHECK CMD ["/nodejs/bin/node", "/app/health_checker_bin.js"]
, które okresowo wysyła zapytanie do punktu końcowego/healthz
. Jeśli korzystasz z kontroli stanu Dockera, możesz zmienić ustawienia, postępując zgodnie z instrukcjami Dockera.
Weryfikacja
Skonfiguruj URL kontenera serwera
W Menedżerze tagów otwórz kontener serwera. W sekcji Administracja > Ustawienia kontenera wpisz adres URL serwera tagowania w polu Adres URL kontenera serwera i kliknij Zapisz.
Zweryfikuj w trybie podglądu
W obszarze roboczym Menedżera tagów wyświetl podgląd kontenera, klikając Podgląd. Zobaczysz, że strona podglądu się wczyta. Na innej karcie przeglądarki przejdź do dowolnej ścieżki pod adresem URL kontenera serwera. Jeśli na stronie podglądu widać wysłane żądanie, oznacza to, że wszystko jest skonfigurowane prawidłowo.
Jeśli zmapujesz wiele subdomen na jeden serwer tagowania i chcesz wyświetlić podgląd każdej z nich, dodaj adresy URL kontenera serwera w sekcji Administracja > Ustawienia kontenerów. Jeśli podasz kilka adresów URL, wszystkie ścieżki adresu URL muszą być dopasowane (ciąg informacji następujących po nazwie domeny). Na przykład możesz zobaczyć podgląd w example.com/abc
i example2.com/abc
, ale nie możesz zobaczyć podglądu w example.com/abc
i example2.com/def
. Jeśli dodasz wiele adresów URL, obok przycisku Podgląd zobaczysz ikonę umożliwiającą wybranie adresu URL, którego podgląd chcesz wyświetlić.