Dostosowywanie i ponowne wdrażanie mikrousługi
W tym samouczku pokazano, jak edytować jedną z mikrousług w rozwiązaniu do monitorowania zdalnego, utworzyć obraz mikrousługi , wdrożyć obraz w centrum platformy Docker, a następnie użyć go w rozwiązaniu do monitorowania zdalnego. Aby wprowadzić tę koncepcję, samouczek używa podstawowego scenariusza, w którym wywołujesz interfejs API mikrousług i zmieniasz komunikat o stanie z "Alive and Well" na "New Edits Made Here!"
Rozwiązanie do monitorowania zdalnego używa mikrousług utworzonych przy użyciu obrazów platformy Docker ściągniętych z centrum platformy Docker.
Ten samouczek zawiera informacje na temat wykonywania następujących czynności:
- Edytowanie i tworzenie mikrousługi w rozwiązaniu do monitorowania zdalnego
- Tworzenie obrazu platformy Docker
- Wypychanie obrazu platformy Docker do centrum platformy Docker
- Ściąganie nowego obrazu platformy Docker
- Wizualizowanie zmian
Wymagania wstępne
Aby wykonać czynności opisane w tym samouczku, potrzebne są następujące elementy:
- Lokalne wdrażanie akceleratora rozwiązania do monitorowania zdalnego
- Konto platformy Docker
- Postman — wymagane do wyświetlenia odpowiedzi interfejsu API
Wywoływanie interfejsu API i wyświetlanie stanu odpowiedzi
W tej części wywołasz domyślny interfejs API mikrousług menedżera usługi IoT Hub. Interfejs API zwraca komunikat o stanie, który zmienisz później, dostosowując mikrousługę.
Upewnij się, że rozwiązanie do monitorowania zdalnego działa lokalnie na maszynie.
Znajdź miejsce, w którym pobrano narzędzie Postman i otwórz go.
W narzędziu Postman wprowadź następujące polecenie w pliku GET:
https://localhost:8080/iothubmanager/v1/status
.Wyświetl powrót i powinien zostać wyświetlony komunikat "Status": "OK:Alive and Well".
Zmienianie stanu i kompilowanie obrazu
Teraz zmień komunikat o stanie mikrousługi usługi Iot Hub Manager na "Nowe edycje wprowadzone tutaj!", a następnie ponownie skompiluj obraz platformy Docker przy użyciu tego nowego stanu. Jeśli wystąpią problemy tutaj, zapoznaj się z naszą sekcją Rozwiązywanie problemów .
Upewnij się, że terminal jest otwarty i przejdź do katalogu, w którym zostało sklonowane rozwiązanie do monitorowania zdalnego.
Zmień katalog na "azure-iot-pcs-remote-monitoring-dotnet/services/iothub-manager/Services".
Otwórz plik StatusService.cs w dowolnym edytorze tekstów lub środowisku IDE, które chcesz.
Znajdź następujący kod:
var result = new StatusServiceModel(true, "Alive and well!");
i zmień go na poniższy kod i zapisz go.
var result = new StatusServiceModel(true, "New Edits Made Here!");
Wstecz do terminalu, ale teraz przejdź do następującego katalogu: "azure-iot-pcs-remote-monitoring-dotnet/services/iothub-manager/scripts/docker".
Aby skompilować nowy obraz platformy Docker, wpisz
sh build
lub w Windows:
./build.cmd
Aby sprawdzić, czy nowy obraz został pomyślnie utworzony, wpisz
docker images
Repozytorium powinno mieć wartość "azureiotpcs/iothub-manager-dotnet".
Tagowanie i wypychanie obrazu
Przed wypchnięciem nowego obrazu platformy Docker do centrum platformy Docker platforma Docker oczekuje, że obrazy zostaną oznakowane. Jeśli wystąpią problemy tutaj, zapoznaj się z naszą sekcją Rozwiązywanie problemów .
Znajdź identyfikator obrazu utworzonego obrazu platformy Docker, wpisując:
docker images
Aby oznaczyć obraz jako "testowy" typ
docker tag [Image ID] [docker ID]/iothub-manager-dotnet:testing
Aby wypchnąć nowo oznakowany obraz do centrum platformy Docker, wpisz
docker push [docker ID]/iothub-manager-dotnet:testing
Otwórz przeglądarkę internetową i przejdź do centrum platformy Docker i zaloguj się.
Powinien zostać wyświetlony nowo wypchnięty obraz platformy Docker w centrum platformy Docker.
Aktualizowanie rozwiązania do monitorowania zdalnego
Teraz musisz zaktualizować lokalny plik docker-compose.yml, aby ściągnąć nowy obraz platformy Docker z centrum platformy Docker. Jeśli wystąpią problemy tutaj, zapoznaj się z naszą sekcją Rozwiązywanie problemów .
Wstecz do terminalu i przejdź do następującego katalogu: "azure-iot-pcs-remote-monitoring-dotnet/services/scripts/local".
Otwórz plik docker-compose.yml w dowolnym edytorze tekstów lub środowisku IDE, które chcesz.
Znajdź następujący kod:
image: azureiotpcs/iothub-manager-dotnet:testing
i zmień go tak, aby wyglądał jak na poniższym obrazie i zapisz go.
image: [docker ID]/iothub-manager-dotnet:testing
Wyświetlanie nowego stanu odpowiedzi
Zakończ, ponownie wdrażając lokalne wystąpienie rozwiązania do monitorowania zdalnego i wyświetlając nową odpowiedź stanu w narzędziu Postman.
Wstecz do terminalu i przejdź do następującego katalogu: "azure-iot-pcs-remote-monitoring-dotnet/scripts/local".
Uruchom lokalne wystąpienie rozwiązania do monitorowania zdalnego, wpisując następujące polecenie w terminalu:
docker-compose up
Znajdź miejsce, w którym pobrano narzędzie Postman i otwórz go.
W narzędziu Postman wprowadź następujące żądanie w get:
https://localhost:8080/iothubmanager/v1/status
. Powinien zostać wyświetlony komunikat "Stan": "OK: Nowe zmiany wprowadzone tutaj!".
Rozwiązywanie problemów
Jeśli występują problemy, spróbuj usunąć obrazy i kontenery platformy Docker na komputerze lokalnym.
Aby usunąć wszystkie kontenery, należy najpierw zatrzymać wszystkie uruchomione kontenery. Otwórz terminal i wpisz
docker stop $(docker ps -aq) docker rm $(docker ps -aq)
Aby usunąć wszystkie obrazy, otwórz terminal i wpisz
docker rmi $(docker images -q)
Możesz sprawdzić, czy na maszynie znajdują się jakieś kontenery, wpisując polecenie
docker ps -aq
Jeśli wszystkie kontenery zostały pomyślnie usunięte, nic nie powinno być wyświetlane.
Możesz sprawdzić, czy na maszynie znajdują się jakieś obrazy, wpisując
docker images
Jeśli wszystkie kontenery zostały pomyślnie usunięte, nic nie powinno być wyświetlane.
Następne kroki
W tym samouczku pokazano, jak wykonać następujące działania:
- Edytowanie i tworzenie mikrousługi w rozwiązaniu do monitorowania zdalnego
- Tworzenie obrazu platformy Docker
- Wypychanie obrazu platformy Docker do centrum platformy Docker
- Ściąganie nowego obrazu platformy Docker
- Wizualizowanie zmian
Następną rzeczą do wypróbowania jest dostosowanie mikrousługi symulatora urządzenia w rozwiązaniu do monitorowania zdalnego
Aby uzyskać więcej informacji o rozwiązaniu do monitorowania zdalnego, zobacz: