أحاول أخذ حاوية عامل ميناء من جهاز واحد وتشغيلها على جهاز آخر ومواجهة هذا الخطأ: "استجابة خطأ من البرنامج الخفي: لا يوجد أمر محدد".
يوجد أدناه مثال مبسط يوضح المشكلة:
docker --versionDocker version 1.10.1, build 9e83765docker pull ubuntudocker run --name u1 -dit ubuntu:latestdocker export -o exported u1docker stop u1docker rm u1docker import exported ubuntu:importeddocker run --name u1 -dit ubuntu:importeddocker: Error response from daemon: No command specified.
في هذا المثال ، ونحن أولا سحب صورة (أوبونتو) وبنجاح إنشاء / تشغيل الحاويات u1 منه. ثم نقوم بتصدير تلك الحاوية إلى ملف (exported) ، إيقاف / إزالة الحاوية ، استيراد الملف إلى صورة جديدة (ubuntu:imported) ومحاولة تشغيل حاوية جديدة منه. فشل.
docker export لا يصدر كل شيء عن الحاوية - فقط نظام الملفات. لذلك ، عند استيراد التفريغ مرة أخرى إلى صورة عامل ميناء جديدة ، يجب تحديد علامات إضافية لإعادة إنشاء السياق.
على سبيل المثال ، إذا كانت الحاوية الأصلية تعمل بشكل جيد لأن ملف الإرساء الذي تم استخدامه لإنشاء صورتها كان CMD ["/usr/bin/supervisord"] في ذلك ، ثم استيراد تفريغ الخاص بك بهذه الطريقة:
عند تصدير حاوية فقدت التاريخ الخاص الذي يحتوي على طبقات الصورة والبيانات الوصفية. لذلك فقدت الحاوية الخاصة بك دول بيد.
يجب أن يكون لكل حاوية عملية أولية (جذر). كنت أوفيردينغ إنتريبوانت الافتراضي على دوكيرفيل كما باش. [تحرير] أعتقد حتى أنك لا تجاوز يستخدم الافتراضي ، لم يتم تعريفها في صورة قاعدة أوبونتو. لذلك يجب أن تبدأ العملية الأولية الخاصة بك مع الأمر سمد. أعتقد أنه لا يوجد خلل. بل هو ميزة دوكيرفيل لإعادة الاستخدام.
docker save nginx:alpine | ssh rmeote-host docker import -sha256:f6098fc18511abbbfe9e52ed0d0ccc1fbe4f7b018ee1cd85392999aa92ebba1b# we see errorsdocker container run -d -p 2020:80 nginx:alpinedocker: Error response from daemon: No command specified.See 'docker run --help'.
إذا كنت تستخدم load
docker save nginx:alpine | ssh remote-host "cat - | docker load"Loaded image: nginx:alpinedocker container run --name nginx -dp 2020:80 nginx:alpine7cc8836bef1e276f8aa986a09186e9e227542be3b094b082b9ab1f6d3c290a99docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES7cc8836bef1e nginx:alpine "/docker-entrypoint.…" 2 seconds ago Up 1 second 0.0.0.0:2020->80/tcp, :::2020->80/tcp nginx