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 przy użyciu szablonu usługi Resource Manager?
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ą z Microsoft Defender dla Chmury, 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
Błąd jest wyświetlany, gdy użytkownik ma uprawnienia do rejestru, ale nie ma uprawnień na poziomie czytelnika w subskrypcji. 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 mogę 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 bazowe 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. Dzięki temu obraz ma warstwę, która nie jest współużytkowany przez żaden inny obraz 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 zostanie wycofana.
Czy usługa Azure Container Registry obsługuje funkcję zaufania do kontenera?
Tak, możesz użyć zaufanych obrazów w usłudze Azure Container Registry, ponieważ notariusz platformy Docker został zintegrowany i można go włączyć. 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.json
rolitargets/releases
).
Zaleca się zweryfikowanie tych kluczy publicznych i certyfikatów po ogólnej weryfikacji TUF wykonanej przez klienta Platformy Docker i Notary.
Jak mogę udzielić dostępu do ściągania lub wypychania obrazów bez uprawnień do zarządzania zasobem rejestru?
Usługa ACR obsługuje role niestandardowe, które zapewniają różne poziomy uprawnień. W szczególności AcrPull
role i AcrPush
umożliwiają użytkownikom ściąganie i/lub wypychanie obrazów bez uprawnień do zarządzania zasobem rejestru na platformie Azure.
Witryna Azure Portal: Rejestr —> Kontrola dostępu (zarządzanie dostępem i tożsamościami) —> dodaj (wybierz
AcrPull
lubAcrPush
jako rolę).Interfejs wiersza polecenia platformy Azure: Znajdź identyfikator zasobu rejestru, uruchamiając następujące polecenie:
az acr show -n myRegistry
Następnie możesz przypisać użytkownikowi
AcrPull
rolę lubAcrPush
(w poniższym przykładzie użytoAcrPull
):az role assignment create --scope resource_id --role AcrPull --assignee user@example.com
Możesz też przypisać rolę do jednostki usługi zidentyfikowanej przez jej identyfikator aplikacji:
az role assignment create --scope resource_id --role AcrPull --assignee 00000000-0000-0000-0000-000000000000
Następnie osoba przypisana może uwierzytelniać obrazy w rejestrze i uzyskiwać do niego dostęp.
Aby uwierzytelnić się w rejestrze:
az acr login -n myRegistry
Aby wyświetlić listę repozytoriów:
az acr repository list -n myRegistry
Aby ściągnąć obraz:
docker pull myregistry.azurecr.io/hello-world
W przypadku używania tylko AcrPull
roli lub AcrPush
przypisanie nie ma uprawnień do zarządzania zasobem rejestru na platformie Azure. Na przykład az acr list
lub az acr show -n myRegistry
nie pokaże rejestru.
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ć tak, aby tylko te obrazy, które pomyślnie przeszły skanowanie zabezpieczeń, 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 mogę wypchnąć warstwy niedystrybucyjne do rejestru?
Warstwa niedystrybucyjna w manifeście zawiera parametr adresu URL, z którego można pobrać zawartość. Niektóre możliwe przypadki użycia włączania wypychania warstw bez dystrybucji są przeznaczone dla rejestrów z ograniczeniami sieci, rejestrów z ograniczonym dostępem lub rejestrów bez łączności 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 będzie ściągnąć błędy dla warstw obcych/niedystrybucyjnych. 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 niedystrybucyjnych:
daemon.json
Edytuj plik, który znajduje się na/etc/docker/
hostach systemu Linux i wC:\ProgramData\docker\config\daemon.json
systemie 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.
Gdy wypchniesz obrazy do rejestrów na liście, ich warstwy niedystrybucyjne są wypychane do rejestru.
Ostrzeżenie
Artefakty niedystrybucyjne zwykle mają ograniczenia dotyczące sposobu ich dystrybucji i udostępniania. Ta funkcja służy tylko do wypychania artefaktów do prywatnych rejestrów. Upewnij się, że są zgodne z dowolnymi terminami, które obejmują redystrybucję artefaktów niedystrybucyjnych.
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 przejściowym problemem, ponawianie próby powiedzie się.
- W przypadku
docker pull
cią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 acr
wersja 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 w celu zwiększenia szybkości 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=false
do pliku/etc/sysconfig/docker
konfiguracji 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:latest
nawet 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
debug
Zacznij od dockerd
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. Na przykład w systemie Ubuntu 14.04:
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.log
to .
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 /host
Teraz 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 logout
się 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
- Firewall
- Korzystanie z portalu z sieci publicznej dla rejestru, który zezwala tylko na dostęp prywatny
- Blokady reklam
- Błędy 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. Przeprowadź uaktualnienie do obsługiwanej warstwy usługi przy użyciu polecenia az acr update lub witryny 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", "nieprawidłowy format" lub "żądane dane nie istnieją" podczas określania nazwy repozytorium w operacjach repozytorium, sprawdź pisownię i wielkość liter nazwy. 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 będzie działać z tą włączoną obsługą, a program Fiddler nie działa.
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 mogę 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. |
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ę to zdarzyć, jeśli używasz az login --identity w zadaniu usługi ACR. Jest to błąd przejściowy i występuje, gdy przypisanie roli tożsamości zarządzanej nie zostało rozpropagowane. Oczekiwanie na kilka sekund przed ponowieniu próby działa. |
Ciągła integracja/ciągłe wdrażanie
Jak rozwiązać problem z niepowodzeniem tworzenia puli agentów 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łączyć wbudowane zasady platformy Azure dla bloków usługi ACR umożliwiające poświadczenia administratora?
Następujące wbudowane zasady platformy Azure po ustawieniu odpowiedniego stanu zasad uniemożliwią użytkownikowi włączenie 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. | Audit | niezgodne |
Następne kroki
- Dowiedz się więcej o usłudze Azure Container Registry.