هل من الممكن لتحرير البيانات التي تم إرجاعها من قبل عامل الميناء فحص?

docker inspect إرجاع جميع أنواع المعلومات المثيرة للاهتمام حول صورة عامل ميناء أو حاوية (أو كائن آخر).

أين يتم تخزين هذه المعلومات? هل من الممكن تحريره?

كما johnharris85 يقول.
حتى الآن (17.12) واجهة برمجة تطبيقات عامل الميناء لتحرير معظم خيارات الحاوية.

الشيء الوحيد الذي يمكننا القيام به هو تحرير ملفات التكوين على القرص:


بشكل عام ، كان التكوين في المجلد /var/lib/docker/containers/<conainerID>*/

  • التكوين.الإصدار 2.جسون
  • هوستكونفيغ.جسون

تحريرها ، إعادة تشغيل خدمة عامل الميناء ، سيتم تحميل التكوين الجديد.

// تم اختباره في عامل الميناء 17.12

انظر أيضا:https://stackoverflow.com/a/49371983/4896468

لا ليس من الممكن لتحرير 'بنيت في' معلومات التكوين والدولة التي تم إرجاعها من قبل docker inspect. ولكن إذا كنت تريد أضف معلومات إلى docker inspect ثم يمكنك النظر في إضافة تسميات إلى الصور / الحاويات الخاصة بك ومن ثم التنقيب عن ذلك (كما يتم إرجاع معلومات التسمية من قبل docker inspect).

يمكن العثور على مستندات رسمية حول وضع العلامات (كائنات مختلفة مختلفة هنا.

نعم ، يشير جونهاريس إلى عدم وجود واجهة برمجة تطبيقات تحرير مباشرة

@يورنشن هو الصحيح أن التحرير /var/lib/docker/containers/<containerID>/hostconfig.json ثم إعادة تشغيل البرنامج الخفي عامل الميناء سيتم تحديث إخراج docker inpect <containerID>

أثناء تحديث عامل الميناء ، تم تغيير وقت التشغيل الافتراضي من oci إلى runc ولم أتمكن من إعادة تشغيل كومة من الحاويات.الناتج من sudo cat /var/lib/docker/<containerID>/hostconfig.json | jq .Runtime كان "oci" ولكن يجب أن يكون "runc" بعد التحديث.

بدأت يدويا sudo docker start <short_containerID>

اعتمادا على ما تحاول تحقيقه ، قد يكون من الأفضل وضع تسمية.