WindowsでDockerを使い始めようとしています。私のマシンには4GBのRAMと1.9GHz-2.5GHz Intel i5プロセッサが搭載され、Windows 10 Pro x64を実行しています。これらは強力な仕様ではないことはわかっていますが、 Dockerを実行するには?
ただし、Dockerをダウンロードすると、エラーメッセージが表示されます。
Dockerを起動するのに十分なメモリがありません
私はこれに関するさまざまなフォーラムの投稿とgithubの問題を見てきましたが、Dockerの設定を変更するなど、私が見ることができるすべてのアドバイスに従いました。
また、Hyper-Vの設定を変更することについても言及しましたVMただし、これは削除され、起動のたびにDockerの指定された設定で再作成されたようです。 1024MBのRAM。すべてが失敗しました。
他に何ができますか?マシン上で何らかの形でdockerを実行できますか?注:必須ではないバックグラウンドアプリはすべて閉じました。特定の解決策が機能しない、かなり一般的な問題と思われるものについて、他の多くの提案はないようです。
私も同じ問題に遭遇しました。動的メモリの提供から、Hyper Vなどの有効化と無効化まで、すべてを試しました。しかし、それでも成功しませんでした。
次に、これらの手順を試しました
WindowsでDockerが起動しない:dockerを起動するのに十分なメモリがありません:
1)システムトレイメニューから、Dockerアイコンを右クリックします
2)Windowsコンテナに切り替え...
3)システムを再起動します。
Dockerの再起動後、ステータスが表示されます:Docker is running
お役に立てれば!
PS:rfayが言ったように、ほとんどのユーザーがWindowsコンテナーに切り替えた後、Linuxコンテナーに戻すことは機能するはずです。
更新(2019年5月1日)
上記の方法にもかかわらず、まだWindowsマシンでdockerを起動できない場合は、次のことを試してください。
F5
を押して更新します今、ドッカーを実行してみてください、これは動作するはずです。がんばろう!
[設定]で工場出荷時のデフォルトにリセットを実行しました。そしてラップトップを再起動しました。それは私のために働いた
ウィンドウを開いているときにこのエラーが発生した場合は、検索ボックスに移動します
#1 type Hyper-V Manager
Click on it,
a window like attached screenshot open,
#2 Select MobilinuxVM(normally same name if running windows docker)
#3 Right click and open - Setting
2 The second window will open(setting for MobiLinux) i.e to the screenshot.
#4 Go to Memory Tab in left Pane.
#5 click on a dynamic checkbox and set minimum value to some lower amount say 512, and max value to the desired one,
#6 apply
now it will start running as well after few minutes take the amount it required as well.
HyperV設定でNUMAスパニングを有効にしましたか?有効にしない場合は、問題を解決できると思います。
既定では、Windows ServerはNUMAスパニングを有効にします。これにより、仮想マシン(VM)は任意のNUMAノードのメモリにアクセスして使用できるため、最も柔軟性が高くなります。ただし、VMがプロセッサコアと同じNUMAノードでメモリを使用するように強制する場合と比較して、パフォーマンスが低下する可能性があります。
NUMAスパニングを無効にすることにより、VMが同じNUMAノードでメモリとプロセッサコアを使用し、最高のパフォーマンスが得られるようにします。これは、管理者としてNUMAと無効化の意味に満足している場合、および最適な構成を確保するのに役立つ追加の管理スイートがある場合は、一度だけ変更する必要があります。
NUMAスパニングを構成するには、Hyper-Vの設定を開き、NUMAスパニングオプションを選択して無効にします。解決されます。私はこの問題に1週間苦労し、NUMAを無効にして解決しました。
Hyper-VマネージャーでNUMAを無効にすることで、これが解決済みとしてマークされると確信しています。
私も同じ問題を抱えています。たぶん、Hyper-vに他の仮想マシンがあり、他の仮想マシンにもメモリが必要です。他のすべてのHyper-v仮想マシンを停止して、もう一度テストしてください。私のために働いた My Hyper-v Manager
この問題が発生したとき、C:\ Program Files\Docker\Docker\resourcesにあるDockerインストールのリソースフォルダーにあるPowerShellスクリプトMobyLinux.ps1を変更しました。基本的に、$ CPUの値を2に、$ Memoryの値を512に強制しました。これは、開発ボックスの限られたリソースで機能しました。
この時点で、DockerがHyper-VでMobyLinuxVMインスタンスをドロップし、PowerShellスクリプトから再作成すると、現在値が使用されています:
今回はVMが起動し安定しているため、DockerはWindowsコンテナからLinuxコンテナに正常に切り替わります。
これが誰かを助けることを願っています。
メモリを下げて、ディスクイメージサイズが32 GBになるように最低にスワップし、Windowsコンテナーに切り替えたり再起動したりすることなく、最終的に起動しました。