Docker arka plan programı güncelleme sonrasında '404 sayfa bulunamadı' yanıtını veriyor


11

Kısa süre önce docker'ımı 1.4'ten 1.5'e güncelledim (paketle birlikte lxc_docker).

O zamandan beri, docker daemon böyle bir hata gönderir (her komut için):

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

Ama istemcinin önceki sürümünü kullanırsanız, iyi cevap alırım:

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

Proxy ayarları gibi görünüyor ( HTTP_PROXYve HTTPS_PROXYdeğişkenler bu sunucuda kullanılır) ve sorunu ayarlayarak sorunu çözebilirimNO_PROXY :

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

Bu sorunun gerçekte nereden geldiğini biliyor musunuz ? Ve nasıl temiz bir şekilde çözülür?

Yanıtlar:


7

Yeni bir 1.5 özellik, docker'dan bir adam (twitter'da icecrime) bunu doğruladı. belgeler güncel: https://github.com/docker/docker/pull/10192/files

Yani temiz bir şekilde çözmek zorunda değilsiniz. Docker'ı bir proxy'nin arkasında kullanmanın doğru yolu budur.


Bu bir özellik değil, bir hata ve 1.6.0 sürümünde düzeltildi - cevabımı görün.
Piotr Dobrogost

Açıkçası bu tür bir "özellik" kullanıcılar tarafından takdir edilmedi ve dün çıkan 1.6.0'da ( github.com/docker/docker/pull/10739 ) doğru şekilde düzeltildi .
François SAMIN

5

Bu sorunun gerçekte nereden geldiğini biliyor musunuz?

Sorun, docker'ın gereksiz yere (birinin hatalı bir şekilde tartışabileceği) adresindeki yerel unix etki alanı soketine erişmek için proxy ( HTTP_PROXYveya HTTPS_PROXYortam değişkenleri tarafından belirtilmişse ) kullanmaya çalışmasından kaynaklanmaktadır ./var/run/docker.sock

Ve nasıl temiz bir şekilde çözülür?

Bu, 1.6.0 sürümünde bu durumda proxy kullanmaya çalışılmadan düzeltildi . Sonuç olarak eklemeye gerek yoktur /var/run/docker.sockiçin NO_PROXYartık ortam değişkeni.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.