Sprawdzanie kondycji rejestru kontenerów platformy Azure
W przypadku korzystania z rejestru kontenerów platformy Azure czasami mogą wystąpić problemy. Na przykład możesz nie być w stanie ściągnąć obrazu kontenera z powodu problemu z platformą Docker w środowisku lokalnym. Lub problem z siecią może uniemożliwić nawiązanie połączenia z rejestrem.
W pierwszym kroku diagnostycznym uruchom polecenie az acr check-health , aby uzyskać informacje o kondycji środowiska i opcjonalnie dostęp do rejestru docelowego. To polecenie jest dostępne w interfejsie wiersza polecenia platformy Azure w wersji 2.0.67 lub nowszej. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Aby uzyskać dodatkowe wskazówki dotyczące rozwiązywania problemów z rejestrem, zobacz:
- Rozwiązywanie problemów z logowaniem do rejestru
- Rozwiązywanie problemów z siecią w rejestrze
- Rozwiązywanie problemów z wydajnością rejestru
Uruchom polecenie az acr check-health
W poniższych przykładach pokazano różne sposoby uruchamiania az acr check-health
polecenia.
Uwaga
Jeśli uruchomisz polecenie w usłudze Azure Cloud Shell, środowisko lokalne nie zostanie zaznaczone. Można jednak sprawdzić dostęp do rejestru docelowego.
Sprawdzanie tylko środowiska
Aby sprawdzić lokalny demon platformy Docker, wersję interfejsu wiersza polecenia i konfigurację klienta programu Helm, uruchom polecenie bez dodatkowych parametrów:
az acr check-health
Sprawdzanie środowiska i rejestru docelowego
Aby sprawdzić dostęp do rejestru, a także przeprowadzić kontrole środowiska lokalnego, przekaż nazwę rejestru docelowego. Na przykład:
az acr check-health --name myregistry
Sprawdzanie dostępu do rejestru w sieci wirtualnej
Aby zweryfikować ustawienia DNS w celu kierowania do prywatnego punktu końcowego, przekaż nazwę lub identyfikator zasobu sieci wirtualnej. Identyfikator zasobu jest wymagany, gdy sieć wirtualna znajduje się w innej subskrypcji lub grupie zasobów niż rejestr.
az acr check-health --name myregistry --vnet myvnet
Raportowanie błędów
Polecenie rejestruje informacje o standardowych danych wyjściowych. Jeśli zostanie wykryty problem, zostanie wyświetlony kod błędu i opis. Aby uzyskać więcej informacji na temat kodów i możliwych rozwiązań, zobacz dokumentację dotyczącą błędów.
Domyślnie polecenie zatrzymuje się za każdym razem, gdy znajdzie błąd. Można również uruchomić polecenie , aby zapewnić dane wyjściowe dla wszystkich kontroli kondycji, nawet jeśli zostaną znalezione błędy. --ignore-errors
Dodaj parametr, jak pokazano w następujących przykładach:
# Check environment only
az acr check-health --ignore-errors
# Check environment and target registry; skip confirmation to pull image
az acr check-health --name myregistry --ignore-errors --yes
Przykładowe dane wyjściowe:
az acr check-health --name myregistry --ignore-errors --yes
Docker daemon status: available
Docker version: Docker version 18.09.2, build 6247962
Docker pull of 'mcr.microsoft.com/mcr/hello-world:latest' : OK
ACR CLI version: 2.2.9
Helm version:
Client: &version.Version{SemVer:"v2.14.1", GitCommit:"5270352a09c7e8b6e8c9593002a73535276507c0", GitTreeState:"clean"}
DNS lookup to myregistry.azurecr.io at IP 40.xxx.xxx.162 : OK
Challenge endpoint https://myregistry.azurecr.io/v2/ : OK
Fetch refresh token for registry 'myregistry.azurecr.io' : OK
Fetch access token for registry 'myregistry.azurecr.io' : OK
Sprawdzanie, czy rejestr jest skonfigurowany z kwarantanną
Po włączeniu kwarantanny rejestru kontenerów każdy obraz publikowany w tym repozytorium zostanie poddany kwarantannie. Wszelkie próby uzyskania dostępu lub ściągnięcia obrazów poddane kwarantannie nie powiedzą się z powodu błędu. Aby uzyskać więcej informacji, zobacz Ściąganie obrazu kwarantanny.
Następne kroki
Aby uzyskać szczegółowe informacje o kodach błędów zwracanych przez polecenie az acr check-health, zobacz dokumentację dotyczącą błędu sprawdzania kondycji.
Zapoznaj się z często zadawanymi pytaniami i innymi znanymi problemami dotyczącymi usługi Azure Container Registry.