W tym artykule opisano często zadawane pytania i znane problemy dotyczące usługi Azure Container Registry.
Aby uzyskać wskazówki dotyczące rozwiązywania problemów z rejestrem, zobacz:
Zarządzanie zasobami
Czy mogę utworzyć usługę Azure Container Registry (ACR) przy użyciu szablonu usługi Azure Resource Manager (ARM)?
Tak. Oto szablon , którego można użyć do utworzenia rejestru.
Czy istnieje skanowanie luk w zabezpieczeniach dla obrazów w usłudze ACR?
Tak. Zapoznaj się z dokumentacją usługi Microsoft Defender for Cloud, Twistlock i Aqua.
Jak mogę skonfigurować platformę Kubernetes za pomocą usługi Azure Container Registry?
Zapoznaj się z dokumentacją platformy Kubernetes i instrukcjami dotyczącymi usługi Azure Kubernetes Service.
Jak mogę uzyskać poświadczenia administratora dla rejestru kontenerów?
Ważne
Konto użytkownika administratora jest przeznaczone dla jednego użytkownika w celu uzyskania dostępu do rejestru, głównie do celów testowych. Nie zalecamy udostępniania poświadczeń konta administratora wielu użytkownikom. Indywidualna tożsamość jest zalecana dla użytkowników i jednostek usługi w scenariuszach bezgłowych. Zobacz Omówienie uwierzytelniania.
Przed uzyskaniem poświadczeń administratora upewnij się, że administrator rejestru jest włączony.
Aby uzyskać poświadczenia przy użyciu interfejsu wiersza polecenia platformy Azure:
az acr credential show -n myRegistry
Korzystanie z programu Azure PowerShell:
Invoke-AzureRmResourceAction -Action listCredentials -ResourceType Microsoft.ContainerRegistry/registries -ResourceGroupName myResourceGroup -ResourceName myRegistry
Jak mogę uzyskać poświadczenia administratora w szablonie usługi Resource Manager?
Ważne
Konto użytkownika administratora jest przeznaczone dla jednego użytkownika w celu uzyskania dostępu do rejestru, głównie do celów testowych. Nie zalecamy udostępniania poświadczeń konta administratora wielu użytkownikom. Indywidualna tożsamość jest zalecana dla użytkowników i jednostek usługi w scenariuszach bezgłowych. Zobacz Omówienie uwierzytelniania.
Przed uzyskaniem poświadczeń administratora upewnij się, że administrator rejestru jest włączony.
Aby uzyskać pierwsze hasło:
{
"password": "[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', 'myRegistry'), '2017-10-01').passwords[0].value]"
}
Aby uzyskać drugie hasło:
{
"password": "[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', 'myRegistry'), '2017-10-01').passwords[1].value]"
}
Usuwanie replikacji kończy się niepowodzeniem ze stanem Zabronione, chociaż replikacja zostanie usunięta przy użyciu interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell
Ten błąd występuje, gdy użytkownik ma Container Registry Contributor and Data Access Configuration Administrator rolę w rejestrze — zezwalającą na usunięcie repliki za pośrednictwem interfejsu wiersza polecenia platformy Azure — ale nie ma uprawnień czytelnika do subskrypcji. Dostęp czytelnika w ramach subskrypcji jest wymagany do usuwania replik za pośrednictwem portalu. Aby rozwiązać ten problem, przypisz użytkownikowi uprawnienia czytelnika do subskrypcji:
az role assignment create --role "Reader" --assignee user@contoso.com --scope /subscriptions/<subscription_id>
Reguły zapory są aktualizowane pomyślnie, ale nie zaczynają obowiązywać
Propagacja zmian reguł zapory zajmuje trochę czasu. Po zmianie ustawień zapory poczekaj kilka minut przed zweryfikowaniem tej zmiany.
Operacje rejestru
Jak mogę uzyskać dostęp do interfejsu API HTTP rejestru platformy Docker w wersji 2?
Usługa ACR obsługuje interfejs API HTTP rejestru platformy Docker w wersji 2. Dostęp do interfejsów API można uzyskać pod adresem https://<your registry login server>/v2/. Przykład: https://mycontainerregistry.azurecr.io/v2/
Jak można usunąć wszystkie manifesty, do których nie odwołuje się żaden tag w repozytorium?
Jeśli korzystasz z powłoki bash:
az acr manifest list-metadata --name myRepository --registry myRegistry --query "[?tags[0]==null].digest" --output tsv | xargs -I% az acr repository delete --name myRegistry ---image myRepository@%
W PowerShell:
az acr manifest list-metadata --name myRepository --repository myRegistry --query "[?tags[0]==null].digest" --output tsv | %{ az acr repository delete --name myRegistry --image myRepository@$_ }
Uwaga
Aby pominąć potwierdzenie, możesz dodać -y polecenie delete.
Aby uzyskać więcej informacji, zobacz Usuwanie obrazów kontenerów w usłudze Azure Container Registry.
Dlaczego użycie limitu przydziału rejestru nie zmniejsza się po usunięciu obrazów?
Taka sytuacja może wystąpić, jeśli warstwy leżące pod spodem są nadal przywoływane przez inne obrazy kontenerów. Jeśli usuniesz obraz bez odwołań, użycie rejestru zostanie zaktualizowane w ciągu kilku minut.
Jak mogę zweryfikować zmiany limitu przydziału magazynu?
Utwórz obraz z warstwą 1 GB przy użyciu następującego pliku platformy Docker. Ten krok gwarantuje, że obraz ma warstwę, która nie jest współużytkowana z żadnym innym obrazem w rejestrze.
FROM alpine
RUN dd if=/dev/urandom of=1GB.bin bs=32M count=32
RUN ls -lh 1GB.bin
Skompiluj i wypchnij obraz do rejestru przy użyciu interfejsu wiersza polecenia platformy Docker.
docker build -t myregistry.azurecr.io/1gb:latest .
docker push myregistry.azurecr.io/1gb:latest
Powinno być widoczne, że użycie magazynu zwiększyło się w witrynie Azure Portal lub można wykonywać zapytania dotyczące użycia przy użyciu interfejsu wiersza polecenia.
az acr show-usage -n myregistry
Usuń obraz przy użyciu interfejsu wiersza polecenia platformy Azure lub portalu i sprawdź zaktualizowane użycie w ciągu kilku minut.
az acr repository delete -n myregistry --image 1gb
Jak mogę uwierzytelnić się w rejestrze podczas uruchamiania interfejsu wiersza polecenia w kontenerze?
Należy uruchomić kontener interfejsu wiersza polecenia platformy Azure, instalowania gniazda platformy Docker:
docker run -it -v /var/run/docker.sock:/var/run/docker.sock azuresdk/azure-cli-python:dev
W kontenerze zainstaluj polecenie docker:
apk --update add docker
Następnie uwierzytelnij się w rejestrze:
az acr login -n MyRegistry
Jak włączyć protokół TLS 1.2?
Włącz protokół TLS 1.2 przy użyciu dowolnego ostatniego klienta platformy Docker (wersja 18.03.0 lub nowsza).
Ważne
Od 13 stycznia 2020 r. usługa Azure Container Registry będzie wymagać wszystkich bezpiecznych połączeń z serwerów i aplikacji do korzystania z protokołu TLS 1.2. Obsługa protokołów TLS 1.0 i 1.1 została wycofana.
Czy usługa Azure Container Registry obsługuje funkcję zaufania do kontenera?
Tak, możesz używać zaufanych obrazów w Azure Container Registry z Docker Content Trust. Aby uzyskać szczegółowe informacje, zobacz Zaufanie do zawartości w usłudze Azure Container Registry.
Gdzie znajduje się plik odcisku palca?
W obszarze ~/.docker/trust/tuf/myregistry.azurecr.io/myrepository/metadata:
- Klucze publiczne i certyfikaty wszystkich ról (z wyjątkiem ról delegowania) są przechowywane w obiekcie
root.json. - Klucze publiczne i certyfikaty roli delegowania są przechowywane w pliku JSON roli nadrzędnej (na przykład
targets.jsonrolitargets/releases).
Klucze publiczne i certyfikaty należy zweryfikować po ogólnej weryfikacji TUF przeprowadzonej przez klienta Docker and Notary.
Jak udzielić dostępu do obrazów ściąganych lub wypychanych bez udzielania uprawnień do zarządzania zasobem rejestru?
Usługa ACR obsługuje kontrolę dostępu opartą na rolach usługi Microsoft Entra (RBAC) oraz wbudowane role, które oferują różne poziomy uprawnień na tej platformie. Przykładowo, umożliwiają one przyznanie uprawnień do wypychania lub pobierania obrazów bez konieczności przyznawania dostępu do całego rejestru.
Opcjonalnie można użyć [kontroli dostępu opartej na atrybutach Microsoft Entra (ABAC)] do zarządzania uprawnieniami repozytorium opartego na usłudze Microsoft Entra i przypisaniami ról zakresu do określonych repozytoriów.
Jak mogę włączyć automatyczną kwarantannę obrazu dla rejestru?
Kwarantanna obrazów jest obecnie funkcją usługi ACR w wersji zapoznawczej. Tryb kwarantanny rejestru można włączyć, aby tylko obrazy, które przeszły skanowanie bezpieczeństwa, były widoczne dla zwykłych użytkowników. Aby uzyskać szczegółowe informacje, zobacz repozytorium GitHub usługi ACR.
Jak mogę włączyć anonimowy dostęp do ściągania?
Aby uzyskać więcej informacji, zobacz Udostępnianie zawartości rejestru publicznie.
Jak wypchnąć warstwy niedystrybucyjne do rejestru?
Warstwa, która nie jest dystrybuowalna, w manifeście zawiera parametr adresu URL, z którego można pobrać zawartość. Niektóre możliwe przypadki użycia włączania wypychania warstwy niedystrybucyjnej to rejestry z ograniczeniami sieciowymi, rejestry z odseparowaną przestrzenią powietrzną z ograniczonym dostępem lub rejestry bez połączenia z Internetem.
Jeśli na przykład masz skonfigurowane reguły sieciowej grupy zabezpieczeń, aby maszyna wirtualna mogła ściągać obrazy tylko z rejestru kontenerów platformy Azure, platforma Docker może napotkać błędy podczas ściągania warstw obcych lub niesystrybucyjnych. Na przykład obraz systemu Windows Server Core będzie zawierać odwołania do obcej warstwy do rejestru kontenerów platformy Azure w manifeście i nie może ściągnąć tego scenariusza.
Aby włączyć wypychanie warstw niedystrybuowalnych:
daemon.jsonEdytuj plik, który znajduje się na/etc/docker/hostach systemu Linux i wC:\ProgramData\docker\config\daemon.jsonsystemie Windows Server. Zakładając, że plik był wcześniej pusty, dodaj następującą zawartość:{ "allow-nondistributable-artifacts": ["myregistry.azurecr.io"] }Uwaga
Wartość jest tablicą adresów rejestru rozdzielonych przecinkami.
Zapisz i zamknij plik.
Uruchom ponownie platformę Docker.
Po wypychaniu obrazów do rejestrów na liście ich warstwy niedystrybucyjne są wypychane do rejestru.
Ostrzeżenie
Artefakty, które nie są dystrybuowalne, zazwyczaj mają ograniczenia dotyczące sposobu i miejsca, w którym mogą być dystrybuowane i udostępniane. Ta funkcja służy tylko do wypychania artefaktów do prywatnych rejestrów. Upewnij się, że przestrzegasz wszelkich warunków dotyczących redystrybucji artefaktów, których nie można rozdzielić.
Diagnostyka i kontrole kondycji
Sprawdzanie kondycji za pomocą polecenia "az acr check-health"
Aby rozwiązać typowe problemy ze środowiskiem i rejestrem, zobacz Sprawdzanie kondycji rejestru kontenerów platformy Azure.
Ściąganie platformy Docker kończy się niepowodzeniem z powodu błędu: net/http: żądanie anulowane podczas oczekiwania na połączenie (przekroczono limit czasu klienta podczas oczekiwania na nagłówki)
- Jeśli ten błąd jest problemem przejściowym, ponowna próba może zakończyć się pomyślnie.
- W przypadku
docker pullciągłego niepowodzenia może wystąpić problem z demonem platformy Docker. Problem można ogólnie rozwiązać, uruchamiając ponownie demona platformy Docker. - Jeśli ten problem będzie nadal występować po ponownym uruchomieniu demona platformy Docker, problem może dotyczyć niektórych problemów z łącznością sieciową z maszyną. Aby sprawdzić, czy ogólna sieć na maszynie jest w dobrej kondycji, uruchom następujące polecenie, aby przetestować łączność punktu końcowego. Minimalna
az acrwersja zawierająca to polecenie sprawdzania łączności to 2.2.9. Uaktualnij interfejs wiersza polecenia platformy Azure, jeśli używasz starszej wersji.
az acr check-health -n myRegistry
- Zawsze należy mieć mechanizm ponawiania prób dla wszystkich operacji klienta platformy Docker.
Ściąganie platformy Docker działa wolno
Użyj narzędzia speed, aby przetestować szybkość pobierania sieci maszyny. Jeśli sieć maszyny jest niska, rozważ użycie maszyny wirtualnej platformy Azure w tym samym regionie co rejestr, aby zwiększyć szybkość sieci.
Wypychanie platformy Docker działa wolno
Użyj narzędzia speed, aby przetestować szybkość przekazywania sieci maszyny. Jeśli sieć maszyny jest niska, rozważ użycie maszyny wirtualnej platformy Azure w tym samym regionie co rejestr w celu zwiększenia szybkości sieci.
Wypychanie platformy Docker kończy się pomyślnie, ale ściąganie platformy Docker kończy się niepowodzeniem z powodu błędu: brak autoryzacji: wymagane jest uwierzytelnienie
Ten błąd może wystąpić w przypadku wersji Red Hat demona platformy Docker, gdzie --signature-verification jest domyślnie włączona. Możesz sprawdzić opcje demona platformy Docker dla systemu Red Hat Enterprise Linux (RHEL) lub Fedora, uruchamiając następujące polecenie:
grep OPTIONS /etc/sysconfig/docker
Na przykład serwer Fedora 28 ma następujące opcje demona platformy Docker:
OPTIONS='--selinux-enabled --log-driver=journald --live-restore'
W przypadku --signature-verification=false braku błędu docker pull występuje błąd podobny do następującego:
Trying to pull repository myregistry.azurecr.io/myimage ...
unauthorized: authentication required
Aby naprawić ten błąd:
Dodaj opcję
--signature-verification=falsedo pliku/etc/sysconfig/dockerkonfiguracji demona platformy Docker . Na przykład:OPTIONS='--selinux-enabled --log-driver=journald --live-restore --signature-verification=false'Uruchom ponownie usługę demona platformy Docker, uruchamiając następujące polecenie:
sudo systemctl restart docker.service
--signature-verification Szczegółowe informacje można znaleźć, uruchamiając polecenie man dockerd.
polecenie az acr login powiedzie się, ale platforma Docker kończy się niepowodzeniem z powodu błędu: brak autoryzacji: wymagane jest uwierzytelnienie
Upewnij się, że używasz adresu URL serwera z małą literą, na przykład , docker push myregistry.azurecr.io/myimage:latestnawet jeśli nazwa zasobu rejestru jest wielką literą lub literą mieszaną, na przykład myRegistry.
Włączanie i pobieranie dzienników debugowania demona platformy Docker
dockerd Zacznij od debug opcji . Najpierw utwórz plik konfiguracji demona platformy Docker (/etc/docker/daemon.json), jeśli nie istnieje, i dodaj debug opcję:
{
"debug": true
}
Następnie uruchom ponownie demona.
sudo service docker restart
Szczegółowe informacje można znaleźć w dokumentacji platformy Docker.
Dzienniki mogą być generowane w różnych lokalizacjach w zależności od systemu. Na przykład w systemie Ubuntu 14.04 jest
/var/log/upstart/docker.logto .
Aby uzyskać szczegółowe informacje, zobacz dokumentację platformy Docker .W przypadku platformy Docker dla systemu Windows dzienniki są generowane w obszarze %LOCALAPPDATA%/docker/. Może jednak nie zawierać jeszcze wszystkich informacji o debugowaniu.
Aby uzyskać dostęp do pełnego dziennika demona, może być konieczne wykonanie dodatkowych kroków:
docker run --privileged -it --rm -v /var/run/docker.sock:/var/run/docker.sock -v /usr/local/bin/docker:/usr/local/bin/docker alpine sh docker run --net=host --ipc=host --uts=host --pid=host -it --security-opt=seccomp=unconfined --privileged --rm -v /:/host alpine /bin/sh chroot /hostTeraz masz dostęp do wszystkich plików maszyny wirtualnej z systemem
dockerd. Dziennik znajduje się pod adresem/var/log/docker.log.
Nowe uprawnienia użytkownika mogą nie być skuteczne natychmiast po zaktualizowaniu
Gdy przyznasz nowe uprawnienia (nowe role) jednostce usługi, zmiana może nie obowiązywać natychmiast. Istnieją dwa możliwe przyczyny:
Opóźnienie przypisania roli w usłudze Microsoft Entra. Zwykle jest to szybkie, ale może upłynąć kilka minut z powodu opóźnienia propagacji.
Opóźnienie uprawnień na serwerze tokenów usługi ACR może potrwać do 10 minut. Aby rozwiązać ten problem, możesz i ponownie uwierzytelnić
docker logoutsię przy użyciu tego samego użytkownika po 1 minucie:docker logout myregistry.azurecr.io docker login myregistry.azurecr.io
Obecnie usługa ACR nie obsługuje usuwania replikacji macierzystej przez użytkowników. Obejściem jest dołączenie do szablonu tworzenia replikacji głównej, ale pominięcie jego tworzenia przez dodanie "condition": false , jak pokazano poniżej:
{
"name": "[concat(parameters('acrName'), '/', parameters('location'))]",
"condition": false,
"type": "Microsoft.ContainerRegistry/registries/replications",
"apiVersion": "2017-10-01",
"location": "[parameters('location')]",
"properties": {},
"dependsOn": [
"[concat('Microsoft.ContainerRegistry/registries/', parameters('acrName'))]"
]
},
Informacje o uwierzytelnianiu nie są podane w poprawnym formacie w przypadku bezpośrednich wywołań interfejsu API REST
Może wystąpić InvalidAuthenticationInfo błąd, szczególnie przy użyciu curl narzędzia z opcją -L, --location (aby postępować zgodnie z przekierowaniami).
Na przykład pobieranie obiektu blob przy użyciu curl-L opcji i uwierzytelniania podstawowego:
curl -L -H "Authorization: basic $credential" https://$registry.azurecr.io/v2/$repository/blobs/$digest
może spowodować następującą odpowiedź:
<?xml version="1.0" encoding="utf-8"?>
<Error><Code>InvalidAuthenticationInfo</Code><Message>Authentication information is not given in the correct format. Check the value of Authorization header.
RequestId:00000000-0000-0000-0000-000000000000
Time:2019-01-01T00:00:00.0000000Z</Message></Error>
Główną przyczyną jest to, że niektóre curl implementacje są zgodne z przekierowaniami z nagłówkami z oryginalnego żądania.
Aby rozwiązać ten problem, należy wykonać przekierowania ręcznie bez nagłówków. Wydrukuj nagłówki odpowiedzi z opcją -D -curl , a następnie wyodrębnij: Location nagłówek:
REDIRECT_URL=$(curl -s -D - -H "Authorization: basic $credential" https://$registry.azurecr.io/v2/$repository/blobs/$digest | grep "^Location: " | cut -d " " -f2 | tr -d '\r')
curl $REDIRECT_URL
Dlaczego witryna Azure Portal nie wyświetla listy wszystkich moich repozytoriów lub tagów?
Jeśli używasz przeglądarki Microsoft Edge/IE, możesz zobaczyć co najwyżej 100 repozytoriów lub tagów. Jeśli rejestr zawiera więcej niż 100 repozytoriów lub tagów, zalecamy użycie przeglądarki Firefox lub Chrome, aby wyświetlić je wszystkie.
Dlaczego witryna Azure Portal nie może pobrać repozytoriów lub tagów?
Przeglądarka może nie być w stanie wysłać żądania pobierania repozytoriów lub tagów na serwer. Mogą istnieć różne przyczyny, takie jak:
- Brak łączności sieciowej
- Zapora sieciowa
- Korzystanie z portalu z sieci publicznej dla rejestru, który zezwala tylko na dostęp prywatny
- Blokady reklam
- Błędy serwera nazw domen (DNS)
Skontaktuj się z administratorem sieci lub sprawdź konfigurację sieci i łączność. Spróbuj uruchomić az acr check-health -n yourRegistry polecenie przy użyciu interfejsu wiersza polecenia platformy Azure, aby sprawdzić, czy środowisko może nawiązać połączenie z usługą Container Registry. Ponadto możesz również wypróbować sesję incognito lub prywatną w przeglądarce, aby uniknąć nieaktualnej pamięci podręcznej lub plików cookie przeglądarki.
Dlaczego moje żądanie ściągnięcia lub wypychania kończy się niepowodzeniem z niedozwoloną operacją?
Poniżej przedstawiono niektóre scenariusze, w których operacje mogą być niedozwolone:
- Rejestry klasyczne nie są już obsługiwane. Uaktualnij do obsługiwanej warstwy usługi przy użyciu polecenia az acr update lub Azure Portal.
- Obraz lub repozytorium może być zablokowany, aby nie można było go usunąć ani zaktualizować. Aby wyświetlić bieżące atrybuty, możesz użyć polecenia az acr repository show .
- Niektóre operacje są niedozwolone, jeśli obraz znajduje się w kwarantannie. Dowiedz się więcej o kwarantannie.
- Rejestr mógł osiągnąć limit magazynu.
Format repozytorium jest nieprawidłowy lub nieobsługiwany
Jeśli podczas określania nazwy repozytorium w operacjach repozytorium zostanie wyświetlony błąd, taki jak "nieobsługiwany format repozytorium", "nieprawidłowy format" lub "żądane dane nie istnieją", sprawdź pisownię i wielkość liter w nazwie. Prawidłowe nazwy repozytorium mogą zawierać tylko małe litery alfanumeryczne, kropki, kreski, podkreślenia i ukośniki.
Jak mogę zbierać ślady http w systemie Windows?
Wymagania wstępne
- Włączanie odszyfrowywania protokołu HTTPS w programie Fiddler
- Włącz platformę Docker, aby używać serwera proxy za pośrednictwem interfejsu użytkownika platformy Docker.
- Pamiętaj, aby powrócić po zakończeniu. Platforma Docker nie działa, gdy ta opcja jest włączona, a program Fiddler nie jest uruchomiony.
Kontenery systemu Windows
Konfigurowanie serwera proxy platformy Docker na 127.0.0.1:8888
Kontenery systemu Linux
Znajdź adres IP przełącznika wirtualnego maszyny wirtualnej platformy Docker:
(Get-NetIPAddress -InterfaceAlias "*Docker*" -AddressFamily IPv4).IPAddress
Skonfiguruj serwer proxy platformy Docker pod kątem danych wyjściowych poprzedniego polecenia i portu 8888 (na przykład 10.0.75.1:8888)
Zadania
Jak mogę przebiegi anulowania wsadowego?
Następujące polecenia anulują wszystkie uruchomione zadania w określonym rejestrze.
az acr task list-runs -r $myregistry --run-status Running --query '[].runId' -o tsv \
| xargs -I% az acr task cancel-run -r $myregistry --run-id %
Jak dołączyć folder ".git" w poleceniu "az acr build"?
W przypadku przekazania lokalnego folderu źródłowego do az acr build polecenia .git folder zostanie domyślnie wykluczony z przekazanego pakietu. Plik można utworzyć .dockerignore przy użyciu następującego ustawienia. Polecenie nakazuje przywrócenie wszystkich plików w .git przekazanym pakiecie.
!.git/**
To ustawienie dotyczy az acr run również polecenia .
Czy zadania obsługują narzędzie GitLab dla wyzwalaczy źródłowych?
Obecnie nie obsługujemy narzędzia GitLab dla wyzwalaczy źródłowych.
Jaka usługa zarządzania repozytorium git obsługuje zadania?
| Usługa Git | Kontekst źródłowy | Kompilacja ręczna | Automatyczne kompilowanie za pomocą wyzwalacza zatwierdzania |
|---|---|---|---|
| GitHub | https://github.com/user/myapp-repo.git#mybranch:myfolder |
Tak | Tak |
| Azure Repos | https://dev.azure.com/user/myproject/_git/myapp-repo#mybranch:myfolder |
Tak | Tak |
| GitLab | https://gitlab.com/user/myapp-repo.git#mybranch:myfolder |
Tak | Nie. |
| Wiadro BitBucket | https://user@bitbucket.org/user/mayapp-repo.git#mybranch:myfolder |
Tak | Nie. |
Rozwiązywanie problemów z komunikatem o błędzie przebiegu
| Komunikat o błędzie | Przewodnik po rozwiązywaniu problemów |
|---|---|
| Nie skonfigurowano dostępu dla maszyny wirtualnej, dlatego nie znaleziono żadnych subskrypcji | Może się tak zdarzyć, jeśli używasz az login --identity w zadaniu usługi ACR. Ten błąd ma charakter przejściowy i występuje, gdy przypisanie roli zarządzanej tożsamości nie jest jeszcze propagowane. Oczekiwanie na kilka sekund przed ponowieniu próby działa. |
Ciągła integracja/ciągłe wdrażanie
Jak rozwiązać problem, jeśli tworzenie puli agentów nie powiedzie się z powodu problemów z przekroczeniem limitu czasu?
Skonfiguruj prawidłowe reguły zapory dla istniejących sieciowych grup zabezpieczeń lub tras zdefiniowanych przez użytkownika. Po zakończeniu instalacji zaczekaj kilka minut na zastosowanie reguł zapory.
Jak włączenie wbudowanej zasady platformy Azure dla ACR blokuje możliwość włączania poświadczeń administratora?
Następujące wbudowane zasady platformy Azure, jeśli są ustawione na odpowiedni stan zasad, blokują użytkownikom włączanie użytkownika administratora w rejestrze.
| Wbudowane zasady platformy Azure | Stan zasad | Stan administracyjny |
|---|---|---|
| Skonfiguruj rejestry kontenerów, aby wyłączyć konto administratora lokalnego. | Modyfikowanie | Wyłącz |
| Rejestry kontenerów powinny mieć wyłączone konto administratora lokalnego. | Zablokuj | Wyłącz |
| Rejestry kontenerów powinny mieć wyłączone konto administratora lokalnego. | Kontrola | niezgodne |
Następne kroki
- Dowiedz się więcej o usłudze Azure Container Registry.