Help us understand the problem. What is going on with this article?

WSL上でDocker Engineが動くようになっていたっぽいという話

More than 1 year has passed since last update.

経緯


太古の昔より人々はWSLでDockerを動かそうとしてきた。
しかしながら、様々な理由からDocker for WindowsやVirtualBoxを頼らざるを得ない状況が続いていた…

みたいな認識。
実際ググるとそういうアプローチの記事がよく引っかかる。
WSL(Bash on Windows)でDockerを使用する - Qiita
WSLでDockerを使う - Qiita

Docker Engineが動かない理由はcgroupだったりSocketだったり様々な要因が絡んでいるのだろうと思っていたし、いつかWSLのアップデートによって解消される問題なのだろうと想像されていた。しかしなかなか解消されなかった。
そんな私もWindows 10の大型アップデートの度に期待をし、失望するというルーチンを繰り返してきた。

しかし、先日こんなツイートを見かけた。


まじかよ
そんなメモ。

ネタ元

詳しく流れを知りたい人は、下記redditを参照。
ぶっちゃけ「WSLを管理者権限で動作させる」ってのと「Microsoft Store版のUbuntuを使う」って所を抑えておけば、サクッと動かせると思う。本メモはこれの抜粋。
https://www.reddit.com/r/bashonubuntuonwindows/comments/8cvr27/docker_is_running_natively_on_wsl/

検証環境

  • Windows 10 Pro(1803)
  • Ubuntu 16.04 in WSL(ストア版)(後述するけど非ストア版ではなぜか動かなかった)

下準備

Microsoft StoreからUbuntuを入れる

そもそもWSLを動かせない人はその準備を

管理者権限で動いているWSLからDockerをインストール

管理者権限(ココ重要)で動かしているWSLからDockerをインストール。

sudo apt update
sudo apt upgrade
sudo apt install docker.io
sudo cgroupfs-mount
sudo usermod -aG docker $USER
sudo service docker start

hello-worldしてみる

sudo docker run hello-world

image.png

すごい!!!ほんとに動いた!!!

ということで…

ホントにDocker EngineがWSLで動きました!

踏みそうな所

何故かStoreから入れたUbuntuじゃないと動かなかった。
( lxrun /install で入れたいわゆる Legacy ってやつでは動かない )

「動かないなー」って時は、どのディストリビューションが標準設定になっているのかを調べてみると良さそう。
WSLのディストリビューションの切り替えに関するメモ - Qiita

所感

最高かよ。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした