LoginSignup
0
2

More than 1 year has passed since last update.

WSLを有効化して docker run hello-world のエラーを解消した

Last updated at Posted at 2021-06-10

経緯

先日、「Docker-Desktop」をインストールした際に、初歩の初歩である「docker run hello-world」コマンドでエラーが発生し、先に進めなくなってしまいました。

当時の自分と同じくパニックになった方や、自分への備忘録のためとして残しておきたいと思います。

エラーの内容

> docker run hello-world
docker: error during connect: This error may indicate that the docker daemon is not running.: Post "http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/containers/create": open //./pipe/docker_engine: The system cannot find the file specified.

【原因】WSLの有効化がされていない

端的に自分の場合の原因は、「WSLが有効化されていないこと」でした。
お急ぎの方は下のリンクから参照ください。

WSL とは

WSL とは「Windows Subsystem for Linux」の略称で、
大雑把に言えば「Windows上で動くLinux」のことのようです。

WSL有効化の手順 ①PowerShellでコマンド実行

WSLを有効化するためには PowerShell でコマンドを実行する必要があります。
Ctrlキー」と「Rキー」を同時に押してください。

スクリーンショット (46).png

「名前(O):」のところに「powershell」と入力して OK を押します。

PowerShellの青い画面が開いたら、以下のコマンドを実行してください。

PS> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

続けて、以下のコマンドを実行してください。

PS> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

※ここでエラーが発生すると、バージョンがWSLに対応していない可能性があります。
こちらのサイトで確認をしてください。

WSL有効化の手順 ②最新のパッケージをダウンロード

以下のリンク先から最新のパッケージをダウンロードします。
ダウンロードしたら、パッケージをダブルクリックして実行してください。

WSL有効化の手順 ③WSL2を既定のバージョンとして設定する

PowerShellで以下のコマンドを実行してください。

PS> wsl --set-default-version 2

WSL有効化の手順 ④docker run hello-worldの実行

お気に入りのターミナルで以下のコマンドを実行してください。

> docker run hello-world

`「Hello from Docker!」と表示されれば成功です!

その他の原因

「docker-users」というユーザがwindowsに登録されていないからという場合もあるようです。
参考サイトを併せて記載します

おわりに

Docker を入れるだけ入れてみようと考えたら、エラー対処に相当時間を食われました...。
しかもHello-World...。

落ち込んでいる暇があれば共有して同じ失敗を減らそうと考えて投稿させていただきました。
誰かの助けに少しでもなれば幸いです。
読んでいただき、ありがとうございました。
Twitter ( ITの虫 ) のフォローもぜひよろしくお願い致します。

参考文献

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2