هل طلب الميزة الخاص بك متعلق بمشكلة؟
في الوقت الحالي ، لا يبدو أنه cap_add
و cap_drop
مدعومان من خلال نشر المكدس على واجهة المستخدم عند التشغيل في وضع السرب.
عند تضمين ذلك عبر إنشاء yaml ، سيتم تشغيل الخدمة ولكن بدون وجود الإمكانات التي تم تكوينها.
اعتبارًا من docker-ce 20.10 ، يتم الآن تنفيذ هذا التدفق ، ويمكن تصحيح الخدمة عبر cli على سبيل المثال
docker service update --cap-add NET_ADMIN someservicename
صِف الحل الذي تريده
دعم cap_add ضمن نشر مكدس Portainer.
صِف البدائل التي فكرت فيها
غير متوفر
سياق إضافي
قد يكون هذا مرتبطًا بمشكلة تم تسليط الضوء عليها في مستودع docker-ce هنا:
https://github.com/docker/cli/issues/2893
إصدار portainer الذي تم اختباره: v2.0.0
"أنا أيضًا" من الشخص الذي نشأ في عامل ميناء / CLI # 2893.
قدم Docker 20.10 القدرة على إضافة / إزالة القدرات باستخدام سرب.
عند نشر مكدس يستخدم القدرات (على سبيل المثال ، g docker stack deploy --compose-file xxx.yml
) يتم تطبيق الإمكانات بشكل صحيح.
عند نشر نفس ملف الإنشاء مع Portainer ، لا تتم إضافة الإمكانيات (تم التأكيد باستخدام docker inspect xxx | jq '.[0].Spec.TaskTemplate.ContainerSpec.CapabilityAdd'
).
لمعلوماتك ، تم تخصيص هذا في إصدارنا 2.2 (نهاية مارس 2021).
سنتعامل مع هذا في نقطتين:
فقط لمعلوماتك: يجب الآن إصلاح المشكلة التي تم الإبلاغ عنها في https://github.com/docker/cli/issues/2893 في الإصدارات الحالية من Docker Desktop
التعليق الأكثر فائدة
لمعلوماتك ، تم تخصيص هذا في إصدارنا 2.2 (نهاية مارس 2021).
سنتعامل مع هذا في نقطتين: