عامل الميناء الخفي إجابات '404 الصفحة لم يتم العثور على' بعد التحديث

لقد قمت مؤخرا بتحديث عامل الإرساء الخاص بي من 1.4 إلى 1.5 (مع الحزمة lxc_docker).

ومنذ ذلك الحين ، عامل الميناء الخفي يرسل خطأ مثل هذا (لكل أمر):

$ docker version Client version: 1.5.0Client API version: 1.17Go version (client): go1.4.1Git commit (client): a8a31efOS/Arch (client): linux/amd64FATA[0000] Error response from daemon: 404 page not found 

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

$ /usr/bin/docker-old version Client version: 1.4.0Client API version: 1.16Go version (client): go1.3.3Git commit (client): 4595d4fOS/Arch (client): linux/amd64Server version: 1.5.0Server API version: 1.17Go version (server): go1.4.1Git commit (server): a8a31ef

يبدو أن إعدادات الوكيل (HTTP_PROXY و HTTPS_PROXY يتم استخدام المتغيرات على هذا الخادم) ، ويمكنني حل المشكلة عن طريق وضع NO_PROXY متغير:

$ export NO_PROXY="/var/run/docker.sock"$ docker version  Client version: 1.5.0Client API version: 1.17Go version (client): go1.4.1Git commit (client): a8a31efOS/Arch (client): linux/amd64Server version: 1.5.0Server API version: 1.17Go version (server): go1.4.1Git commit (server): a8a31ef

هل تعرف أين هذه المشكلة حقا تأتي من? وكيف نظيفة حلها?

انها ميزة جديدة 1.5 ، وقد أكد رجل من عامل الميناء (@إيسيكريمي على تويتر) ذلك.الوثائق حتى الآن : https://github.com/docker/docker/pull/10192/files

لذلك لم يكن لديك لحلها بشكل نظيف. هذه هي الطريقة الصحيحة لاستخدام عامل الميناء وراء وكيل.

هل تعرف من أين تأتي هذه المشكلة حقا?

المشكلة تأتي من حقيقة أن عامل الميناء دون داع (يمكن للمرء أن يجادل خطأ) يحاول استخدام الوكيل (إذا تم تحديده من قبل HTTP_PROXY أو HTTPS_PROXY متغيرات البيئة) للوصول محلي مقبس نطاق يونكس في /var/run/docker.sock.

وكيفية حلها بشكل نظيف?

كان هذا ثابت في الإصدار 1.6.0 من خلال عدم محاولة استخدام الوكيل في هذه الحالة. ونتيجة لذلك ليس هناك حاجة لإضافة /var/run/docker.sock إلى NO_PROXY متغير البيئة أي أكثر من ذلك.