الأسئلة المتداولة - Azure Container Registry

تتناول هذه المقالة الأسئلة المتداولة والمشكلات الشائعة حول Azure Container Registry.

للحصول على إرشادات حول استكشاف أخطاء التسجيل وإصلاحها، راجع:

إدارة الموارد

هل يمكنني إنشاء Azure Container Registry باستخدام قالب مدير الموارد؟

نعم. إليك نموذجاً يمكنك استخدامه لإنشاء سجل.

هل يوجد فحص للثغرات الأمنية للصور في ACR؟

نعم. راجع الوثائق من Microsoft Defender for Cloud وTwistlock وAqua.

كيف يمكنني تكوين Kubernetes باستخدام Azure Container Registry؟

راجع وثائق Kubernetes وخطوات Azure Kubernetes Service.

كيف أحصل على بيانات اعتماد المسؤول لسجل حاوية؟

هام

تم تصميم حساب المستخدم الإداري لمستخدم واحد للوصول إلى السجل، وذلك بشكل أساسي لأغراض الاختبار. لا نوصي بمشاركة بيانات اعتماد حساب المسؤول مع عدة مستخدمين. يوصى بالهوية الفردية للمستخدمين ومبادئ الخدمة لسيناريوهات بدون أجهزة ملحقة. انظر نظرة عامة على المصادقة.

قبل الحصول على بيانات اعتماد المسؤول، تأكد من تمكين مستخدم مسؤول التسجيل.

للحصول على بيانات الاعتماد باستخدام Azure CLI:

az acr credential show -n myRegistry

استخدام Azure PowerShell:

Invoke-AzureRmResourceAction -Action listCredentials -ResourceType Microsoft.ContainerRegistry/registries -ResourceGroupName myResourceGroup -ResourceName myRegistry

كيف أحصل على بيانات اعتماد المسؤول في قالب مدير الموارد؟

هام

تم تصميم حساب المستخدم الإداري لمستخدم واحد للوصول إلى السجل، وذلك بشكل أساسي لأغراض الاختبار. لا نوصي بمشاركة بيانات اعتماد حساب المسؤول مع عدة مستخدمين. يوصى بالهوية الفردية للمستخدمين ومبادئ الخدمة لسيناريوهات بدون أجهزة ملحقة. انظر نظرة عامة على المصادقة.

قبل الحصول على بيانات اعتماد المسؤول، تأكد من تمكين مستخدم مسؤول التسجيل.

للحصول على كلمة المرور الأولى:

{
    "password": "[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', 'myRegistry'), '2017-10-01').passwords[0].value]"
}

للحصول على كلمة المرور الثانية:

{
    "password": "[listCredentials(resourceId('Microsoft.ContainerRegistry/registries', 'myRegistry'), '2017-10-01').passwords[1].value]"
}

فشل حذف النسخ المتماثل مع حالة ممنوعة على الرغم من حذف النسخ المتماثل باستخدام Azure CLI أو Azure PowerShell

يظهر الخطأ عندما يكون لدى المستخدم أذونات على سجل ولكن ليست لديه أذونات على مستوى القارئ للاشتراك. لحل هذه المشكلة، عيّن أذونات القارئ على الاشتراك للمستخدم:

az role assignment create --role "Reader" --assignee user@contoso.com --scope /subscriptions/<subscription_id> 

يتم تحديث قواعد جدار الحماية بنجاح ولكنها لا تسري

يستغرق نشر تغييرات قواعد جدار الحماية بعض الوقت. بعد تغيير إعدادات جدار الحماية، يرجى الانتظار لبضع دقائق قبل التحقق من هذا التغيير.

عمليات السجل

كيف يمكنني الوصول إلى Docker Registry HTTP API V2؟

ACR يدعم Docker Registry HTTP API V2. يمكن الوصول إلى واجهات برمجة التطبيقات على https://<your registry login server>/v2/. مثال: https://mycontainerregistry.azurecr.io/v2/

كيف أحذف جميع البيانات التي لم تتم الإشارة إليها بواسطة أي علامة في المستودع؟

إذا كنت تستخدم حفلة:

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@%

بالنسبة إلى 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@$_ }

إشعار

يمكنك إضافة -y في أمر الحذف لتخطي التأكيد.

لمزيد من المعلومات، راجع حذف صور الحاوية في Azure Container Registry.

لماذا لا يتم تقليل استخدام حصة التسجيل بعد حذف الصور؟

قد يحدث هذا الموقف إذا كان لا يزال يتم الرجوع إلى الطبقات الأساسية بواسطة صور حاوية أخرى. إذا قمت بحذف صورة بدون مراجع، فسيتم تحديث استخدام السجل في غضون بضع دقائق.

كيف يمكنني التحقق من صحة تغييرات حصة التخزين؟

قم بإنشاء صورة باستخدام طبقة سعة 1 جيجابايت باستخدام ملف docker التالي. هذا يضمن أن الصورة بها طبقة لا تشاركها أي صورة أخرى في السجل.

FROM alpine
RUN dd if=/dev/urandom of=1GB.bin  bs=32M  count=32
RUN ls -lh 1GB.bin

قم بإنشاء الصورة ودفعها إلى السجل الخاص بك باستخدام docker CLI.

docker build -t myregistry.azurecr.io/1gb:latest .
docker push myregistry.azurecr.io/1gb:latest

يجب أن تكون قادراً على رؤية زيادة استخدام التخزين في بوابة Azure، أو يمكنك الاستعلام عن الاستخدام باستخدام CLI.

az acr show-usage -n myregistry

احذف الصورة باستخدام Azure CLI أو البوابة الإلكترونية وتحقق من الاستخدام المحدث في غضون بضع دقائق.

az acr repository delete -n myregistry --image 1gb

كيف يمكنني المصادقة مع السجل الخاص بي عند تشغيل CLI في حاوية؟

تحتاج إلى تشغيل حاوية Azure CLI عن طريق تركيب مقبس Docker:

docker run -it -v /var/run/docker.sock:/var/run/docker.sock azuresdk/azure-cli-python:dev

في الحاوية، قم بتثبيت docker:

apk --update add docker

ثم قم بالمصادقة مع السجل الخاص بك:

az acr login -n MyRegistry

كيفية تمكين TLS 1.2؟

قم بتمكين TLS 1.2 باستخدام أي عميل Docker حديث (الإصدار 18.03.0 وما بعده).

هام

اعتباراً من 13 يناير 2020، سيتطلب Azure Container Registry كافة الاتصالات الآمنة من الخوادم والتطبيقات لاستخدام TLS 1.2. سيتم إيقاف دعم TLS 1.0 و1.1.

هل يدعم Azure Container Registry ثقة المحتوى؟

نعم، يمكنك استخدام الصور الموثوقة في Azure Container Registry، حيث تم دمج Docker Notary ويمكن تمكينه. للحصول على تفاصيل، راجع ثقة المحتوى في Azure Container Registry.

أين يوجد ملف بصمة الإبهام؟

أسفل ~/.docker/trust/tuf/myregistry.azurecr.io/myrepository/metadata:

  • يتم تخزين الشهادات والمفاتيح العامة لجميع الأدوار (باستثناء أدوار التفويض) في root.json.
  • يتم تخزين الشهادات والمفاتيح العامة لدور التفويض في ملف JSON لدوره الرئيسي (على سبيل المثال targets.json للدور targets/releases).

يُقترح التحقق من تلك المفاتيح والشهادات العامة بعد التحقق الشامل من TUF الذي قام به عميل Docker وNotary.

كيف أمنح حق الوصول لسحب الصور أو دفعها بدون إذن لإدارة مورد التسجيل؟

يدعم ACR الأدوار المخصصة التي توفر مستويات مختلفة من الأذونات. على وجه التحديد، تسمح الأدوار AcrPull وAcrPush للمستخدمين بسحب و/أو دفع الصور دون إذن لإدارة مورد السجل في Azure.

  • مدخل Microsoft Azure: السجل الخاص بك >التحكم في الوصول> (IAM) إضافة (حددAcrPull أوAcrPushللدور).

  • Azure CLI: ابحث عن معرف المورد للسجل عن طريق تشغيل الأمر التالي:

    az acr show -n myRegistry
    

    بعد ذلك يمكنك تعيين الدور AcrPull أو AcrPush لمستخدم (يستخدم المثال التالي AcrPull):

    az role assignment create --scope resource_id --role AcrPull --assignee user@example.com
    

    أو قم بتعيين الدور لمدير الخدمة المحدد بواسطة معرف التطبيق الخاص به:

    az role assignment create --scope resource_id --role AcrPull --assignee 00000000-0000-0000-0000-000000000000
    

عندئذٍ يكون المحال إليه قادراً على المصادقة والوصول إلى الصور الموجودة في السجل.

  • للمصادقة على التسجيل:

    az acr login -n myRegistry 
    
  • لسرد المستودعات:

    az acr repository list -n myRegistry
    
  • لسحب صورة:

    docker pull myregistry.azurecr.io/hello-world
    

باستخدام الدور AcrPull أو AcrPush فقط، لا يمتلك المتنازل له الإذن بإدارة مورد السجل في Azure. على سبيل المثال، لن يُظهر az acr list أو az acr show -n myRegistry السجل.

كيف يمكنني تمكين فحص صور تلقائياً للسجل؟

يعد فحص الصورة حالياً ميزة معاينة لـ ACR. يمكنك تمكين وضع الفحص للسجل بحيث تكون الصور التي اجتازت بنجاح فحص الأمان فقط مرئية للمستخدمين العاديين. للحصول على تفاصيل، راجع ACR GitHub repo.

كيف أقوم بتمكين وصول مجهول؟

لمزيد من المعلومات، راجع جعل محتوى السجل متاحاً عموماً.

كيف أقوم بدفع الطبقات غير القابلة للتوزيع إلى سجل؟

تحتوي الطبقة غير القابلة للتوزيع في البيان على معلمة URL التي يمكن جلب المحتوى منها. بعض حالات الاستخدام الممكنة لتمكين دفعات الطبقة غير القابلة للتوزيع هي للسجلات المقيدة بالشبكة، أو السجلات ذات الفجوات الهوائية ذات الوصول المقيد، أو للسجلات التي لا يوجد بها اتصال بالإنترنت.

على سبيل المثال، إذا كانت لديك قواعد NSG تم إعدادها بحيث يتمكن الجهاز الظاهري من سحب الصور فقط من سجل حاوية Azure، فسيسحب Docker حالات الفشل للطبقات الأجنبية/غير القابلة للتوزيع. على سبيل المثال ، قد تحتوي صورة Windows Server Core على مراجع طبقة خارجية إلى سجل حاوية Azure في بيانه وقد تفشل في سحب هذا السيناريو.

لتمكين دفع الطبقات غير القابلة للتوزيع:

  1. قم بتحرير الملف daemon.json الموجود في /etc/docker/ على مضيفي Linux وعلى C:\ProgramData\docker\config\daemon.json على Windows Server. بافتراض أن الملف كان فارغاً مسبقاً، أضف المحتويات التالية:

    {
      "allow-nondistributable-artifacts": ["myregistry.azurecr.io"]
    }
    

    إشعار

    القيمة عبارة عن مجموعة من عناوين التسجيل، مفصولة بفواصل.

  2. حفظ الملف والخروج منه.

  3. أعد تشغيل Docker.

عندما تدفع الصور إلى السجلات في القائمة، يتم دفع طبقاتها غير القابلة للتوزيع إلى السجل.

تحذير

عادةً ما يكون للمنتجات غير القابلة للتوزيع قيود على كيفية ومكان توزيعها ومشاركتها. استخدم هذه الميزة فقط لدفع المنتجات إلى السجلات الخاصة. تأكد من امتثالك لأي شروط تغطي إعادة توزيع المنتجات غير القابلة للتوزيع.

التشخيص والفحوصات الصحية

التحقق من الصحة باستخدام "az acr check-health"

لاستكشاف مشكلات البيئة والسجل الشائعة وإصلاحها، راجع التحقق من صحة سجل حاوية Azure.

فشل سحب Docker مع الخطأ: net/http: تم إلغاء الطلب أثناء انتظار الاتصال (تجاوز Client.Timeout أثناء انتظار العناوين)

  • إذا كان هذا الخطأ يمثل مشكلة عابرة، فستنجح إعادة المحاولة.
  • إذا فشل docker pull بشكل مستمر، فقد تكون هناك مشكلة في Docker daemon. يمكن التخفيف من حدة المشكلة بشكل عام عن طريق إعادة تشغيل Docker daemon.
  • إذا استمر ظهور هذه المشكلة بعد إعادة تشغيل Docker daemon، فقد تكون المشكلة في بعض مشكلات اتصال الشبكة بالجهاز. للتحقق مما إذا كانت الشبكة العامة على الجهاز سليمة، قم بتشغيل الأمر التالي لاختبار اتصال نقطة النهاية. الحد الأدنى للإصدار az acr الذي يحتوي على أمر فحص الاتصال هو 2.2.9. قم بترقية Azure CLI إذا كنت تستخدم إصداراً أقدم.
az acr check-health -n myRegistry
  • يجب أن يكون لديك دائماً آلية إعادة المحاولة في جميع عمليات عميل Docker.

سحب Docker بطيء

استخدم أداة السرعة لاختبار سرعة تنزيل شبكة جهازك. إذا كانت شبكة الجهاز بطيئة، ففكر في استخدام جهاز ظاهري Azure في نفس المنطقة كسجل لتحسين سرعة الشبكة.

دفع Docker بطيء

استخدم هذه الأداة لاختبار سرعة تحميل شبكة جهازك. إذا كانت شبكة الجهاز بطيئة، ففكر في استخدام جهاز ظاهري Azure في نفس المنطقة كسجل لتحسين سرعة الشبكة.

ينجح دفع Docker ولكن فشل سحب docker مع الخطأ: غير مصرح به: المصادقة المطلوبة

قد يحدث هذا الخطأ مع إصدار Red Hat من Docker daemon، حيث يتم تمكين --signature-verification افتراضياً. يمكنك التحقق من خيارات Docker daemon لـ Red Hat Enterprise Linux (RHEL) أو Fedora عن طريق تشغيل الأمر التالي:

grep OPTIONS /etc/sysconfig/docker

على سبيل المثال، يحتوي Fedora 28 Server على خيارات Docker daemon التالية:

OPTIONS='--selinux-enabled --log-driver=journald --live-restore'

مع فقدان --signature-verification=false، يخفق docker pull مع ظهور خطأ مشابه لما يلي:

Trying to pull repository myregistry.azurecr.io/myimage ...
unauthorized: authentication required

لحل الخطأ:

  1. أضف الخيار --signature-verification=false إلى ملف تكوين Docker daemon/etc/sysconfig/docker. على سبيل المثال:

    OPTIONS='--selinux-enabled --log-driver=journald --live-restore --signature-verification=false'

  2. أعد تشغيل خدمة Docker daemon عن طريق تشغيل الأمر التالي:

    sudo systemctl restart docker.service
    

يمكن العثور على تفاصيل --signature-verificationعن طريق تشغيلman dockerd.

az acr login succeeds but docker fails with error: unauthorized: authentication required

تأكد من استخدام عنوان URL بالكامل للخادم بأحرف صغيرة، على سبيل المثال، docker push myregistry.azurecr.io/myimage:latest، حتى إذا كان اسم مورد السجل كبيراً أو مختلطاً، مثل myRegistry.

تمكين والحصول على سجلات تتبع الأخطاء من Docker daemon

ابدأ dockerd بالخيار debug. أولاً ، أنشئ ملف تكوين Docker daemon (/etc/docker/daemon.json) إذا لم يكن موجوداً، وأضف الخيار debug:

{    
    "debug": true    
}

ثم أعد تشغيل البرنامج الخفي. على سبيل المثال، باستخدام Ubuntu 14.04:

sudo service docker restart

يمكن العثور على التفاصيل في وثائق Docker.

  • قد يتم إنشاء السجلات في مواقع مختلفة، اعتماداً على نظامك. على سبيل المثال، بالنسبة لـ Ubuntu 14.04، فهو /var/log/upstart/docker.log.
    راجع وثائق Docker للحصول على التفاصيل.

  • بالنسبة لـ Docker for Windows، يتم إنشاء السجلات ضمن ٪ LOCALAPPDATA٪ / docker /. ومع ذلك، قد لا يحتوي على جميع معلومات التصحيح حتى الآن.

    من أجل الوصول إلى سجل البرنامج الخفي بالكامل، قد تحتاج إلى بعض الخطوات الإضافية:

    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
    

    الآن يمكنك الوصول إلى جميع ملفات الجهاز الظاهري قيد التشغيل dockerd. السجل في /var/log/docker.log.

قد لا تكون أذونات المستخدم الجديدة فعالة على الفور بعد التحديث

عند منح أذونات جديدة (أدوار جديدة) لمدير الخدمة، فقد لا يسري التغيير على الفور. هناك سببان محتملان:

  • تأخير تعيين دور Microsoft Entra. عادة ما يكون سريعاً، ولكن قد يستغرق دقائق بسبب تأخير الانتشار.

  • قد يستغرق تأخير الإذن على خادم الرمز المميز ACR ما يصل إلى 10 دقائق. للتخفيف، يمكنك docker logout ثم المصادقة مرة أخرى مع نفس المستخدم بعد دقيقة واحدة:

    docker logout myregistry.azurecr.io
    docker login myregistry.azurecr.io
    

لا يدعم ACR حالياً حذف النسخ المتماثل المحلي من قبل المستخدمين. يتمثل الحل البديل في تضمين النسخ المتماثل الرئيسي الذي تم إنشاؤه في القالب، ولكن يتم تخطي إنشائه عن طريق إضافة "condition": false كما هو موضح أدناه:

{
    "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'))]"
     ]
},

لا يتم إعطاء معلومات المصادقة بالتنسيق الصحيح على استدعاءات REST API المباشرة

قد تواجه خطأ InvalidAuthenticationInfo، خاصة عند استخدام أداة curl مع الخيار -L، --location (لمتابعة عمليات إعادة التوجيه). على سبيل المثال، جلب blob باستخدام الخيار curl مع -L والمصادقة الأساسية:

curl -L -H "Authorization: basic $credential" https://$registry.azurecr.io/v2/$repository/blobs/$digest

قد يؤدي إلى الاستجابة التالية:

<?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>

السبب الأساسي هو أن بعض curl عمليات التنفيذ تتبع عمليات إعادة توجيه برؤوس من الطلب الأصلي.

لحل المشكلة، تحتاج إلى اتباع عمليات إعادة التوجيه يدوياً بدون الرؤوس. اطبع رؤوس الاستجابة باستخدام الخيار -D -curl ثم استخرج: رأس Location:

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

لماذا لا تسرد بوابة Azure جميع مستودعاتي أو علاماتي؟

إذا كنت تستخدم متصفح Microsoft Edge / IE، فيمكنك رؤية أكثر من 100 مستودع أو علامة. إذا كان السجل الخاص بك يحتوي على أكثر من 100 من المستودعات أو العلامات، فإننا نوصيك باستخدام متصفح Firefox أو Chrome لإدراجها جميعاً.

لماذا تفشل بوابة Azure في جلب المستودعات أو العلامات؟

قد لا يتمكن المستعرض من إرسال طلب جلب المستودعات أو العلامات إلى الخادم. يمكن أن تكون هناك أسباب مختلفة مثل:

  • عدم وجود اتصال بالشبكة
  • جدار الحماية
  • استخدام البوابة الإلكترونية من شبكة عامة لتسجيل يسمح بالوصول الخاص فقط
  • أدوات حظر الإعلانات
  • أخطاء DNS

يرجى الاتصال بمسؤول الشبكة أو التحقق من تكوين الشبكة والاتصال. حاول تشغيل az acr check-health -n yourRegistry باستخدام Azure CLI للتحقق مما إذا كانت بيئتك قادرة على الاتصال بـ Container Registry. بالإضافة إلى ذلك، يمكنك أيضاً تجربة وضع التصفح المتخفي أو جلسة خاصة في متصفحك لتجنب أي ذاكرة تخزين مؤقت أو ملفات تعريف ارتباط قديمة.

لماذا يفشل طلب السحب أو الدفع مع العملية غير المسموح بها؟

فيما يلي بعض السيناريوهات التي قد يتم فيها منع العمليات:

  • السجلات الكلاسيكية لم تعد مدعومة. الرجاء الترقية إلى مستوى خدمة مدعومة باستخدام تحديث az acr أو بوابة Azure.
  • ربما تكون الصورة أو المستودع مقفلين بحيث لا يمكن حذفه أو تحديثه. يمكنك استخدام الأمر az acr repository show لعرض السمات الحالية.
  • بعض العمليات غير مسموح بها إذا كانت الصورة تحت الفحص. تعرف على المزيد حول الفحص.
  • ربما وصل السجل الخاص بك إلى حد التخزين الخاص به.

تنسيق المستودع غير صالح أو غير معتمد

إذا رأيت خطأً مثل "تنسيق مستودع غير مدعوم" أو "تنسيق غير صالح" أو "البيانات المطلوبة غير موجودة" عند تحديد اسم مستودع تخزين في عمليات المستودع، فتحقق من التهجئة وحالة الاسم. قد تتضمن أسماء المستودعات الصالحة فقط أحرفاً أبجدية رقمية صغيرة، ونقاطاً، وشرطات، وشرطات سفلية، وشرطات مائلة للأمام.

كيف أقوم بجمع آثار http على Windows؟

المتطلبات الأساسية

حاويات Windows

قم بتكوين وكيل Docker على 127.0.0.1:8888

حاويات Linux

ابحث عن IP الخاص بالمحول الافتراضي Docker vm:

(Get-NetIPAddress -InterfaceAlias "*Docker*" -AddressFamily IPv4).IPAddress

قم بتكوين وكيل Docker لإخراج الأمر السابق والمنفذ 8888 (على سبيل المثال 10.0.75.1:8888)

المهام

كيف أقوم بإلغاء عمليات التشغيل المجمعة؟

تقوم الأوامر التالية بإلغاء كافة المهام قيد التشغيل في السجل المحدد.

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 %

كيف أقوم بتضمين المجلد .git في الأمر az acr build؟

إذا قمت بتمرير مجلد مصدر محلي إلى الأمر az acr build، فسيتم استبعاد المجلد .git افتراضياً من الحزمة التي تم تحميلها. يمكنك إنشاء ملف .dockerignore من خلال الإعدادات التالية. يخبر الأمر باستعادة جميع الملفات ضمن .git في الحزمة التي تم تحميلها.

!.git/**

ينطبق هذا الإعداد أيضاً على الأمر az acr run.

هل تدعم مهام Google GitLab لمشغلات المصدر؟

لا ندعم حالياً GitLab لمشغلات المصدر.

ما هي خدمة إدارة مستودعات git التي يدعمها Tasks؟

خدمة Git سياق المصدر إنشاء يدوي الإنشاء التلقائي من خلال التزام المشغل
GitHub https://github.com/user/myapp-repo.git#mybranch:myfolder ‏‏نعم‬ ‏‏نعم‬
مستودعات Azure https://dev.azure.com/user/myproject/_git/myapp-repo#mybranch:myfolder ‏‏نعم‬ ‏‏نعم‬
منصة GitLab https://gitlab.com/user/myapp-repo.git#mybranch:myfolder ‏‏نعم‬ لا
BitBucket https://user@bitbucket.org/user/mayapp-repo.git#mybranch:myfolder ‏‏نعم‬ لا

قم بتشغيل استكشاف أخطاء رسالة الخطأ وإصلاحها

رسالة الخطأ دليل استكشاف الأخطاء وإصلاحها
لم يتم تكوين وصول إلى الجهاز الظاهري، وبالتالي لم يتم العثور على اشتراكات قد يحدث هذا إذا كنت تستخدم az login --identity في مهمة ACR الخاصة بك. هذا خطأ عابر ويحدث عندما لا يتم نشر تعيين الدور للهوية المُدارة. الانتظار بضع ثوانٍ قبل إعادة المحاولة.

تكامل CI/CD

كيفية حل ما إذا فشل إنشاء تجمع العامل بسبب مشكلات المهلة؟

قم بإعداد قواعد جدران الحماية الصحيحة لمجموعات أمان الشبكة الحالية أو التوجيهات المعرفة من المستخدم. بعد الإعداد، انتظر بضع دقائق حتى يتم تطبيق قواعد جدار الحماية.

كيف سيمكن تمكين نهج Azure المضمن لحظر ACR تمكين بيانات اعتماد المسؤول؟

سيحظر نهج Azure المضمن التالي، عند تعيينه إلى حالة النهج المعنية، المستخدم من تمكين المستخدم المسؤول على سجله.

نهج Azure المضمن حالة النهج حالة المسؤول
تكوين سجلات الحاوية لتعطيل الحساب الخاص بالمسؤول المحلي. تعديل Disable
يتعين أن يتم تعطيل حساب المسؤول المحلي لسجلات الحاوية. Deny Disable
يتعين أن يتم تعطيل حساب المسؤول المحلي لسجلات الحاوية. التدقيق غير متوافق

الخطوات التالية