Docker for Windowsのインストールメモです。
インストール自体は、サクッと終わりましたが、hello-worldが動かず、少しはまりました。
その際のエラーメッセージは「Docker for Windows – Access denied」。
Dockerのバージョンは「Docker version 17.06.0-ce」。
原因は、ログインユーザーが「docker-users」グループに入っていないことでした。
[adsense]
Docker for Windowsのインストール手順
- Dockerのサイトからインストーラーをダウンロードする。
- Stableは3ヵ月毎に出る安定板です。
- Edgeは毎月出る新機能搭載版です。
- ダウンロードされたファイル(InstallDocker.msi)をダブルクリック。
- ライセンス合意書にチェックを入れてインストール開始する。
- インストール中・・・。
- インストール完了です。
Dockerのバージョン確認
コマンドプロンプトを起動して、dockerコマンドをいくつか試します。
まずは、dockerのバージョン確認。
C:\User\ログインユーザー>docker --version
Docker version 17.06.0-ce, build 02c1d87
Dockerでhello wolrd、ができなかった
次に、hello wolrd
C:\Users\ログインユーザー>docker run hello-world
docker: error during connect: Post http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.30/containers/create: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running. See 'docker run --help'.
エラーになりました。
さらに、ふと気が付くと、アクションセンターにメッセージありました。
Docker for Windows – Access denied
You are not allowed to use Docker
You must be in the “docker-users”group
Docker.DockerForWindows.Setings
また、デスクトップの右下には、こんな表示が・・・。
そこで、Windowsでログインしているユーザーのグループに「docker-users」を追加しました。
グループの追加手順はこちらをご覧ください。
「docker-users」グループを追加したら再起動が必要になるのですが、再起動後、Dockerが自動で起動し始めて、
無事、起動完了しました。
この状態で、コマンドプロンプトから「docker run hello-world」無事成功。
C:\Users\ログインユーザー>docker run hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://cloud.docker.com/ For more examples and ideas, visit: https://docs.docker.com/engine/userguide/
さらに、
C:\Users\ログインユーザー>docker run -it ubuntu bash
も無事実行できました。
コメント