Windows 10のdocker-machineで奇妙な問題が発生しました。それでも解決策が見つかりません。
以前は動作していましたが、Windows 10の更新後、「MACアドレスに一致するIPが見つかりませんでした...」というエラーが表示され始めました。このエラーは、docker-machineを使用したアクションで表示されます。
仮想ボックス(異なるネットワークドライバーを使用)を使用してdockertoolsを再インストールしようとしました。仮想ボックスの最新バージョンをインストールしようとしました。 Docker仮想マシンを削除して再作成します。すべてのvitrualboxホストオンリーネットワークを削除します。それはすべて助けにはなりません。
これがdocker-machine -D create -d virtualbox defaultで得られるものです:
docker-machine envデフォルト:
docker-machine regenerate-certs:
誰かが私を正しい方向に向けることができますか?このような問題の原因は何ですか?
ありがとう!
VonCによって提案された方法を試しました。
これが結果です。
C:\Users\Vadim>Desktop\env.bat
C:\ Users\Vadim> remの最小パス:
C:\ Users\Vadim> set PATH = C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem
C:\ Users\Vadim> remはGitをPATHに追加します
C:\ Users\Vadim> rem set glatest = PortableGit-2.8.1-64-bit
C:\ Users\Vadim> set PATH = C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem; C:\ Program Files\Git\bin; C:\ Program Files\Git\usr\bin; C:\ Program Files\Git
C:\ Users\Vadim> set TERM = msys
C:\ Users\Vadim> set GIT_HOME = C:\ Program Files\Git
C:\ Users\Vadim> rem VirtualPathをPATHに追加
C:\ Users\Vadim> set PATH = C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem; C:\ Program Files\Git\bin; C:\ Program Files\Git\usr\bin; C:\ Program Files\Git; C:\ Pr ogram Files\Oracle\VirtualBox
C:\ Users\Vadim> rem docker-machineをPATHに追加
C:\ Users\Vadim> set PATH = C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem; C:\ Program Files\Git\bin; C:\ Program Files\Git\usr\bin; C:\ Program Files\Git; C:\ Pr ogram Files\Oracle\VirtualBox; C:\ Program Files\Docker Toolbox
C:\ Users\Vadim> set path Path = C:\ Windows\system32; C:\ Windows; C:\ Windows\System32\Wbem; C:\ Program Files\Gi t\bin; C:\ Program Files\Git\usr\bin; C:\ Program Files\Git; C:\ Program Files\Oracle\VirtualBox; C:\ Program Files\Docker Toolbox PATHEXT = .COM; .EXE; .BAT; .CMD; .VBS; .VBE ; .JS; .JSE; .WSF; .WSH; .MSC
C:\ Users\Vadim> docker-machine create -d virtualbox test事前作成チェックを実行しています...マシンを作成しています...(テスト)C:\ Users\Vadim.docker\machine\cache\boot2docker.isoをCにコピーします:\ Users\Vadim.docker\machine\machines\test\boot2docker.iso ...(テスト)VirtualBox VMの作成...(テスト)SSHキーの作成...(テスト)VMの起動...(テスト)ネットワークをチェックして、必要に応じて再作成します...(テスト)Windowsがネットワークアダプターを作成する許可を要求する場合があります。時々、そのような確認ウィンドウはタスクバーで最小化されます。 (テスト)新しいホストオンリーアダプターが見つかりました:「VirtualBoxホストオンリーイーサネットアダプター#2」
(テスト)Windowsは、ネットワークアダプターを構成するためのアクセス許可を要求する場合があります。時々、そのような確認ウィンドウはタスクバーで最小化されます。 (テスト)Windowsは、dhcpサーバーを構成する許可を求める場合があります。時々、そのような確認ウィンドウはタスクバーで最小化されます。 (テスト)IPを待機しています...マシンの実行を待機しています。これには数分かかる場合があります...作成されたインスタンスのオペレーティングシステムを検出しています... SSHが使用可能になるのを待機しています...プロビジョニング担当者を検出しています... boot2dockerを使用したプロビジョニング...ローカルマシンディレクトリへの証明書のコピー...リモートマシンへの証明書のコピー...マシンの作成エラー:プロビジョニングの実行エラー:一致するIP fまたはMACアドレス080027d6b14dが見つかりませんでした
IPとMACに関するこのエラーは引き続き表示されます。
さらなる調査。 VonCによって提案されたように、私はdocker-machine 0.6.0でこれを再試行しました。そして、他のエラーが発生しました:
明らかに仮想マシンでeth1インターフェースを操作しようとしているので、何が起こっているかを確認しました(この間、仮想ボックスインターフェースで作成され、動作するVMを見ることができました)。これがゲストVMに表示されるものです:
ご覧のとおり、eth1インターフェイスにはip4アドレスが指定されていません。それが問題の原因であり、それを修正する方法はありますか?
Virtualboxを開き、docker vmを削除します。クイックスタートを再開します。 Windowsでも同じ問題があります。
同じ問題がありました。私はそれを解決しました:
1)VirtualBox Manager GUIを使用して、「VirtualBox Host-Only Ethernet Adapter」を削除します。 (設定->ネットワーク->ホストオンリーネットワーク)実際には、これらのうち2つがありました。両方削除しました。
2)デフォルトのVMを削除(再び、VirtualBox Manager guiを使用)
3)start.shスクリプトを再実行します
詳細な注意:Windows 7とcygwin64を使用しています。 start.shスクリプトには、vboxmanageへのパスの検索に関する問題があります。これらのエラーを解決する間、私はstart.shスクリプトを複数回実行しました。これはおそらく、VBoxが見つかった奇妙な状態を説明しています。
そのエラーメッセージは、「 ホストオンリーインターフェイスを動的に決定し、eth1 および PR 3112 修正 issue 3108
私はしようとします:
C:\Windows\system32\drivers\
のvbox *ファイルを削除します。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services
のvbox *フォルダーを削除します以下を含むsenv.batスクリプトによってPATHを設定します(セットアップへのパスを変更します)。
rem minimal path:
set PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
rem add Git to PATH
set glatest=PortableGit-2.8.1-64-bit
set PATH=%PATH%;C:\Personal_Unsaved\prgs\git\%glatest%\bin;C:\Personal_Unsaved\prgs\git\%glatest%\usr\bin;C:\Personal_Unsaved\prgs\git\%glatest%
set TERM=msys
set GIT_HOME=C:\Personal_Unsaved\prgs\git\%glatest%
rem add VirtualBox to PATH
set "PATH=%PATH%;C:\Personal_Unsaved\prgs\vbox\latest"
rem add docker-machine to PATH
set PATH=%PATH%;C:\Personal_Unsaved\prgs\dm\latest
最新のdocker-machine 0.7. を使用して、その新しい環境で、新しいマシンを作成します。
docker-machine create -d virtualbox test
docker-mahcine ssh test
(git bashのsshではなく、docker-machineのsshを使用してください)
最新のツールボックスをダウンロードしてインストールした後、Windows 7の1.11.2で同じエラーが発生しました。エラーは、Toolboxの更新後にのみ開始されました。
VirtualBoxのデフォルトVMを削除した後でも、再作成時に同じエラーが発生します。
上記の回答のGitHubで言及されているチケットでVirtualBox 5.0.14に言及していることに気づいたので、5.0.24に更新しました。クイックスタートプロンプトを起動し、デフォルトのvmを再作成しましたが、問題はありません。
これはWindows上で私のために働いた:
私はこのコマンドを実行しました-
docker-machine rm default
次に、docker-machineターミナルを再起動し、IPを自動的に割り当てました。
再起動時に(前回の実行とは)別のIPが割り当てられている場合、docker-machineはVMとの接続の問題を示します。
私のために働いた1つのアプローチは、再起動時に同じIPを取得できるように再起動することです。
例えば。 192.168.99.102(seq 100、101、102の3番目)が作成時に割り当てられた場合、このdockerマシンの前に他の2つのVMを起動して、この1つが102になるようにします。
私はコマンドを維持しています。これは、参考のために最初の日にdockerを実行するのに便利でした。
Docker-machine、docker、およびdocker-composeのスターター用の便利なコマンド
私の答えは将来の読者に役立つ可能性があります。最近この問題に直面したとき、最初にこの質問を見つけたからです。
上記のすべての解決策は私のために機能しませんでした、私は削除しました仮想マシンからデフォルトのマシンとそれを再作成しました
docker-machine rm default
docker-machine create --driver virtualbox default
次に、ネットワークアダプタを削除しました 上記 byAaron Knauf
最後に、dockerおよびVirtualBoxをアンインストールし、構成ファイルを削除しました。dockerおよび。VirtualBoxユーザーのフォルダー内。
次に、Docker ToolboxとVirtualBoxを再インストールした後、Dockerはうまく機能しました
再インストールが良い方法ではない場合でも、それは私の問題を解決しました。
ある日目が覚めると、Dockerは「MACアドレスに一致するIPが見つかりませんでした...」と述べていませんでした。
私を助けたのは次のことでした:
上記で行った数人と同じですが、いくつかの変更があります
これは私のために一度働いた。それが何度も何度も動作することを願っています:)
私はこの問題を経験しました。私が言うことができます-削除して再インストールしても何もしません。私の手順は次のとおりです。
@echo off setlocal enabledelayedexpansion set machine =%1 if "%machine%" == ""( echo dmvbfはマシン名を想定しています exit/b 1 ) set ipx =%2 if "%ipx%" == ""( echo dmvbf x missing ^(for 192.168.xy ^) exit/b 2 ) set ipy =%3 if "%ipy% "==" "( echo dmvbf y missing ^(for 192.168.xy ^) exit/b 3 ) echo kill $(more /var/run/udhcpc.eth1.pid)| docker-machine ssh%machine%Sudo tee /var/lib/boot2docker/bootsync.sh> NUL echo ifconfig eth1 192.168。%ipx%。%ipy%netmask 255.255.255.0 broadcast 192.168。%ipx%.255アップ| docker-machine ssh%machine%Sudo tee -a /var/lib/boot2docker/bootsync.sh> NUL echo route add default gw 192.168.99.22 | docker-machine ssh%machine%Sudo tee -a /var/lib/boot2docker/bootsync.sh> NUL docker-machine ssh%machine% "Sudo cat/var /run/udhcpc.eth1.pid | xargs Sudo kill " docker-machine ssh%machine%" Sudo ifconfig eth1 192.168。%ipx%。%ipy%netmask 255.255.255.0 broadcast 192.168。 %ipx%.255 up "
(おかげで VonC answer )
dmvbf.bat default 99 101
_を実行します。 sshを介してマシン内のIPアドレスを変更しますdocker-machine restart default
_docker-machine regenerate-certs default
_。 IPアドレスを変更したため、以前に生成された証明書は無効になりました。eval $(docker-machine env default)
Windows CMDで。この手順を実行しないと、さまざまなエラーが発生しました(終了ステータス255など)docker run hello-world
_を実行してお楽しみください。同様の問題がありました。タスクマネージャーでVMプロセスを強制終了し、Dockerクイックスタートターミナルを再起動することで、単純に機能させました。
これがいつか誰かを助けることを願っています。