84

Docker を 1.1.0 に更新したばかりなので、次のようになります。

デーモンからのエラー応答: クライアントとサーバーのバージョンが同じではありません (クライアント: 1.13、サーバー: 1.12)

これを修正する方法を知っていますか?

1.0.1 に戻すと、すべてが再び機能します。

4

14 に答える 14

127

boot2docker をインストールした後、VM をアップグレードする必要があるようです。

boot2docker 0.12 以降からアップグレードする場合は、(インストーラーを使用してアップグレードした後に) boot2docker stop && boot2docker download && boot2docker up を使用して既存の仮想マシンを更新できます。既存のデータは失われません。

( https://github.com/boot2docker/osx-installer/releases/tag/v1.1.0 )

于 2014-07-06T11:39:48.243 に答える
19

これは、Docker を更新したが、サービスが再起動されていない場合に発生する可能性があります。次に、更新されたクライアントを使用して Docker デーモンに接続しようとしますが、デーモン (更新前に既に実行されていた) はまだ古いバージョンを実行しています。

これを修正するには、サービスを再起動します。

sysV 初期化:

service docker restart

システム:

systemctl daemon-reload

systemctl restart docker

于 2014-10-26T22:37:36.493 に答える
12

boot2docker、docker、および仮想ボックスの最新バージョンを使用していましたが、まだこのメッセージが表示されていました。走るbrew upgrade boot2dockerのは良くないようです。を実行しているときboot2docker upgradeに、一連の環境変数を設定するように求められた後、うまくいきました。

Boot2docker はこれらを設定するように私に求めました (最後の行を参照):

$ boot2docker upgrade
Latest release for boot2docker/boot2docker is v1.3.0
Downloading boot2docker ISO image...
Success: downloaded https://github.com/boot2docker/boot2docker/releases/download/v1.3.0/boot2docker.iso
    to /Users/.../.boot2docker/boot2docker.iso
Waiting for VM and Docker daemon to start...
.........oooooooooooooo
Started.
Writing /Users/.../.boot2docker/certs/boot2docker-vm/ca.pem
Writing /Users/.../.boot2docker/certs/boot2docker-vm/cert.pem
Writing /Users/.../.boot2docker/certs/boot2docker-vm/key.pem

To connect the Docker client to the Docker daemon, please set:
    export DOCKER_HOST=tcp://192.168.59.103:2376
    export DOCKER_CERT_PATH=/Users/.../.boot2docker/certs/boot2docker-vm
    export DOCKER_TLS_VERIFY=1

これらの 3 つの行を一度に切り取り、端末に貼り付けることができます。

それらが正しいことを確認するには:

$ env
于 2014-10-31T02:32:51.113 に答える
3

ここでの正解は非常に古いものです(Docker は boot2docker の名前を Docker Machine に変更し、いくつかの機能を追加しました)

とにかく、私は同じ問題に直面し、修正するのに約3日かかりました:(

これが解決策です

1) の場所を見つけるboot2docker.iso

sudo find ~/ -name 'boot2docker.iso'

2)boot2docker.isoバックアップを取った後、ファイルを削除します。

/Users/{user}/.docker/machine/cache/boot2docker.iso

3) docker vm を削除します

docker-machine rm {default}

これにより、それも削除されます。

/Users/{user}/.docker/machine/machines/default/boot2docker.iso

4) 新しい docker vm を作成する

docker-machine create --driver virtualbox default

これにより、最初に新しいものがダウンロードされ、boot2docker.isoそれを使用して vm が作成されます。

これで修正されるはずです:)

しかし

ここで次のようなエラーが発生した場合:

Running pre-create checks...
(mega-docker) No default Boot2Docker ISO found locally, downloading the latest release...
Error with pre-create check: "Get https://api.github.com/repos/boot2docker/boot2docker/releases/latest: dial tcp: lookup api.github.com on 192.168.0.1:53: read udp 192.168.0.103:53947->192.168.0.1:53: i/o timeout"

https://api.github.com/repos/boot2docker/boot2docker/releases/latestboot2docker.isoに移動してファイルを手動でダウンロードしてからをクリックし、最後にファイルのダウンロードを選択してください。html_url

ファイルを取得したら、手動で配置します/Users/{user}/.docker/machine/cache/

最後にこのコマンドを再実行しますdocker-machine create --driver virtualbox default

于 2016-03-30T03:08:32.497 に答える
2

私にとってうまくいった唯一のことは、VirtualBoxからboot2dockerイメージを削除してから、~/.boot2dockerフォルダーを完全に削除し、最後にboot2docker init再度実行することでした。

于 2015-04-19T20:21:24.500 に答える
2

私にとってうまくいったのは、プロセスを強制終了し、「sudo service docker start」で開始することだけでした。

于 2015-01-20T03:41:29.663 に答える
1

boot2docker 削除

boot2docker 初期化

私のために働いた。もちろん、その前後にデーモンを停止/開始します。

于 2015-05-27T09:53:01.607 に答える
0

可能な答え:

boot2docker ではなくAnsibleでそこにたどり着いた場合docker_api_version: auto、解決策は次のとおりです。

- name: Mongo data container
  docker:
    docker_api_version: auto
    name: mongo-primary-dc
    image: debian:wheezy
    state: present
    volumes:
    - /data

その理由は、Ansible で使用される docker-py モジュールが、Ubuntu の apt-get リポジトリと同じバージョンではないことが多いためだと思います。

于 2016-01-22T11:35:22.727 に答える
0

私の解決策は、VirtualBox の docker VM で Close > Power Off を実行してから、Kitematic を再起動することでした。これで修正されました。

于 2017-04-04T18:12:02.830 に答える