LoginSignup
1
2

More than 3 years have passed since last update.

Windows 10 HomeでDocker Composeを使う

Last updated at Posted at 2020-10-05

Windows 10 HomeでDocker Composeを使う機会があったので、その記録です。

マシンスペック

  • DELL XPS 13
  • Windows 10 Home
  • Intel Core-i7
  • メモリ 8GB
  • SSD 256GB

やること

Windows 10 HomeでDocker Composeを使えるようにする

前提条件

* Windows Updateして、OSを最新にしておく
* VirtualBoxがインストールされてると動かないかも?なので、アンインストールして再起動しておく

Linux用サブシステムとHyper-Vをインストール

Windows 10 HomeでDockerを動かすにはWSL2が必要で、WSL2を使うには、まずはWindowsの機能を有効化する必要があります。
Windowsの機能の有効化または無効化」で下記の反転箇所をチェックしてインストールします。
無題.png

仮想マシンの機能を有効にする

PowerShellを管理者権限で起動し、下記コマンドを実行します。

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

WSL2に更新する

下記をダウンロードしてインストールします。
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

WSL2を既定のバージョンとして設定

PowerShellを管理者権限で起動し、下記コマンドを実行します。

wsl --set-default-version 2

下記のメッセージが出力されるがスルーして良い。

WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください

タスクマネージャーを開いて、赤線のところが有効になってれば良い。
無題2.png

※参考
Windows 10 用 Windows Subsystem for Linux のインストール ガイド

Docker Desktopをインストール

下記のページに従ってDocker Desktopをインストールします。
Windows 10 Home で WSL 2 + Docker を使う
※「Get started」以降はチュートリアルなので、スキップして良いです。

コマンドプロンプトを開き、下記コマンドを実行してバージョンが出力されたら完了。

docker --version
docker-compose --version

Gitをインストール

Gitが未インストールだったら、インストールします。
WindowsにGitをインストールする方法

コマンドプロンプトを開き、下記コマンドを実行します。

git --version

バージョンが表示されればOK。

'git' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

上記が表示されたら再起動して、再度バージョン確認を行います。

Docker Composeコマンドを使ってみる

コマンドプロンプトを開き、下記コマンドを実行します。

各環境の操作は、下記のように記載します。

[Win]$ WindowsのコマンドプロンプトでWindows内の作業
[PHP]$ WindowsのコマンドプロンプトからPHPコンテナに接続して作業
[Win]$ git clone https://github.com/bobtabo/docker2.git docker
[Win]$ cd docker
[Win]$ docker-compose up -d
・・・
Creating mysql ... done
Creating php   ... done
Creating nginx ... done

[Win]$ docker-compose exec --user 1000 php bash

[PHP]$ pwd
/home/docker

[PHP]$ cd laravel
[PHP]$ composer install
[PHP]$ sudo chmod -R 777 storage

[sudo] password for docker:
パスワード:docker

[PHP]$ sudo chmod -R 777 bootstrap/cache
[PHP]$ cp -p .env.example .env
[PHP]$ php artisan key:generate
[PHP]$ php artisan view:clear
[PHP]$ php artisan cache:clear
[PHP]$ php artisan config:clear
[PHP]$ php artisan route:clear
[PHP]$ php artisan clear-compiled
[PHP]$ php artisan config:cache
[PHP]$ composer dump-autoload
[PHP]$ php artisan ide-helper:generate
[PHP]$ php artisan ide-helper:models -N
[PHP]$ php artisan ide-helper:meta
[PHP]$ php artisan migrate:fresh --seed

動作確認(Windowsのhosts編集)

【Tips】Windows 10のhostsファイルを編集する方法

★下記の点線内を追記
---
127.0.0.1 laravel.local
---

ブラウザで動作確認

無題.png

コンテナ削除

[Win]$ docker-compose down --rmi all --volumes

※参考
《滅びの呪文》Docker Composeで作ったコンテナ、イメージ、ボリューム、ネットワークを一括完全消去する便利コマンド

1
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
1
2