Ponieważ właśnie zaktualizowałem Dockera do wersji 1.1.0, otrzymuję:
Odpowiedź na błąd od demona: klient i serwer nie mają tej samej wersji (klient: 1.13, serwer: 1.12)
Czy wiesz, jak to naprawić?
Wróciłem do 1.0.1 i wszystko znowu działa.
docker
boot2docker
docker-machine
soenke
źródło
źródło
boot2docker
. Czy to również twoja sprawa?boot2docker
problem (do wykorzystania w przyszłości).Odpowiedzi:
Wygląda na to, że po zainstalowaniu boot2dockera musisz zaktualizować maszynę wirtualną:
( https://github.com/boot2docker/osx-installer/releases/tag/v1.1.0 )
źródło
An error occurred trying to connect: Get https://192.168.59.103:2376/v1.19/containers/json?all=1: x509: certificate is valid for 127.0.0.1, 10.0.2.15, not 192.168.59.103
: /boot2docker delete
wtedyboot2docker init
i zaczęło działać.Może się tak zdarzyć, jeśli zaktualizowałeś Docker, ale usługa nie została ponownie uruchomiona. Następnie spróbujesz połączyć się z demonem Docker ze zaktualizowanym klientem, podczas gdy demon (który był już uruchomiony przed aktualizacją) nadal działa w starszej wersji.
Aby to naprawić, uruchom ponownie usługę:
sysV init:
service docker restart
systemd:
systemctl daemon-reload
systemctl restart docker
źródło
systemd
zaleca się zrobićsystemctl daemon-reload
wcześniejsystemctl restart docker
Jeśli używasz
docker-machine
do zarządzania lokalnymi maszynami opartymi na VirtualBox, rozwiązanie jest tak proste, jak w przypadku boot2docker:Prosi
docker-machine
o pobranie najnowszej wersjiboot2docker.iso
i umieszczenie jej jako nowego głównego systemu plików na zaktualizowanej maszynie wirtualnej.Nawiasem mówiąc, maszyna dokowana wspierana przez VirtualBox ma swój główny system plików tylko do odczytu. Oznacza to, że żadna ręczna aktualizacja nie przetrwa ponownego uruchomienia komputera. To była dla mnie niespodzianka.
źródło
Miałem najnowszą wersję boot2dockera, dockera i wirtualnego boxu, ale nadal otrzymywałem tę wiadomość. Wygląda na to, że bieganie
brew upgrade boot2docker
nie jest najlepszym pomysłem. Podczas uruchamianiaboot2docker upgrade
zostałem poproszony o ustawienie kilku zmiennych środowiskowych i wtedy zadziałało.Boot2docker poprosił mnie o ustawienie tych (zobacz ostatnie wiersze):
Możliwe jest wycięcie i wklejenie tych trzech linii za jednym razem do terminala.
Aby sprawdzić, czy są poprawne:
źródło
Próbowałem wysłać zapytanie do serwera Docker za pomocą nowszego klienta:
Rozwiązaniem dla mnie było po prostu:
export DOCKER_API_VERSION=1.21
Źródła: https://docs.docker.com/engine/reference/commandline/cli/
źródło
Prawidłowa odpowiedź jest tutaj bardzo stara (Docker zmienił nazwę boot2docker na Docker Machine i dodał do niego więcej funkcji) .
W każdym razie napotkałem ten sam problem i zajęło mi około 3 dni, aby naprawić :(
Oto rozwiązanie
1) znajdź lokalizację pliku
boot2docker.iso
2) usunąć
boot2docker.iso
plik po wykonaniu jego kopii zapasowej3) Usuń Docker VM
docker-machine rm {default}
powinno to również usunąć ten:
4) Utwórz nową maszynę docker vm
to najpierw pobierze nowy,
boot2docker.iso
a następnie użyje go do utworzenia maszyny wirtualnej.Teraz powinno to naprawić :)
ALE
spróbuj pobrać
boot2docker.iso
plik ręcznie, przechodząc do https://api.github.com/repos/boot2docker/boot2docker/releases/latest, a następnie klikająchtml_url
i ostatecznie wybierając opcję pobrania pliku.po otrzymaniu pliku idź i umieść go ręcznie w
/Users/{user}/.docker/machine/cache/
na koniec ponownie uruchom to polecenie
docker-machine create --driver virtualbox default
źródło
Jedyną rzeczą, która działała dla mnie, było zabicie procesu i uruchomienie go za pomocą "sudo service docker start".
źródło
Jedyną rzeczą, która działała dla mnie, było usunięcie obrazu boot2docker z VirtualBox, a następnie całkowite usunięcie
~/.boot2docker
folderu i wreszcie ponowne uruchomienieboot2docker init
.źródło
usuwanie boot2docker
inicjalizacja boot2docker
pracował dla mnie. oczywiście zatrzymaj / uruchom demona przed i po tym.
źródło
To zadziałało dla mnie: po prostu wyłącza maszynę wirtualną, usuwa i odtwarza ją i ponownie uruchamia. Ponownie uruchamia shellinit, dzięki czemu zmienne ENV zostaną ustawione z poprawnym adresem IP, gdy powróci.
źródło
Miałem najnowszą wersję boot2docker (v1.7.1) i otrzymałem błąd niezgodności serwera klienta. Potem po prostu pobiegłem
boot2docker upgrade
i to rozwiązało problem.źródło
Moim rozwiązaniem było wykonanie Zamknij> Wyłącz na maszynie wirtualnej dockera w VirtualBox, a następnie ponownie uruchom Kitematic. To naprawiło to dla mnie.
źródło
Uważam, że wersja w brew jest nieaktualna w porównaniu z wersją na stronie docker.io. Dlatego myślę, że najlepiej jest wejść na stronę internetową i pobrać plik instalacyjny.
źródło
Odpowiedź Ansible:
Jeśli trafiłeś tam przez Ansible, a nie przez boot2docker, oto rozwiązanie: użyj
docker_api_version: auto
argumentuMyślę, że powodem jest to, że moduł docker-py używany przez Ansible często nie jest w tej samej wersji, co repozytorium Ubuntu apt-get.
źródło