Windowsユーザー用Linux コンテナを使った開発環境構築

Linuxコンテナ開発環境構築開発
Three-shotsによるPixabayからの画像

今回は、DockerのLinuxコンテナを使用した開発環境をWindows 10上に、Docker Deksktop for Windows + Ubuntu + Visual Studio Codeの構成で構築する手順を紹介します。Linuxに余り馴染みのないWindowsユーザーでも、開発の敷居が下がると思います。

スポンサーリンク
スポンサーリンク

Docker Desktop for Windowsの導入

まず、Docker Desktop for Windowsの環境を整えます。ポイントとしては、下記を用意します。

  • Docker Desktop for Windowsインストール
  • WSL2モジュールインストール
  • Linuxコンテナへの切り替え

具体的な手順は、Docker Desktop for Windowsでコンテナ起動を参照してください。

WSL版Ubuntuの導入

Ubuntu 20.04インストール

Microsoft Storeから、Linuxディストリビューションをインストールします。ここでは、Ubuntu 20.04を例に説明します。

Ubuntuの設定が完了したら、とりあえず作業フォルダとして/home/{ubuntuユーザー名}/workフォルダを作成しておきます。

mkdir ~/work

一旦、Ubuntuのウィンドウを閉じます。

WSLバージョン設定

PowerShellを起動し、下記コマンドで実行WSLバージョンを確認します。

> wsl -l -v

  NAME                   STATE           VERSION
* docker-desktop-data    Running         2
  docker-desktop         Running         2
  Ubuntu-20.04           Running         1

もし、対象となるLinuxディストリビューション(ex. Ubuntu-20.04)のWSLバージョンが1だった場合、バージョン2にするために、下記コマンドを実行します。

> wsl --set-version Ubuntu-20.04 2

バージョンが2になったことを確認しておきます。

> wsl -l -v

  NAME                   STATE           VERSION
* docker-desktop-data    Running         2
  docker-desktop         Running         2
  Ubuntu-20.04           Stopped         2

Docker Desktop for Windowsの設定

Docker Desktop for Windowsの設定画面を起動します。

まず、General画面で下記を確認します。

  • Use the WSL 2 based engine: チェックON

Resources> WSL Integration画面で、下記を設定してApply & Restartボタンをクリックします。

  • Enable integration with additional distros: Ubuntu-20.04をON

この時点で、WSL Ubuntuで、sudo docker ps等のdockerコマンドが有効になっており、Docker Desktop for Windows環境の状態が見えると思います。もしDockerコマンドが見つからない場合は、Windows 10のシステムを再起動してみてください。

Visual Studio Codeの設定

開発効率を上げるために、Visual Studio Codeを連携させます。

Windows側のVisual Studio Codeを起動して、拡張機能Remote-WSLをインストールします。

次に、画面左下の緑色アイコン(Open a Remote Window)をクリックして、Remote-WSL: Open Folder in WSL…を選択します。開くフォルダには、\wsl$\Ubuntu-20.04\home\{ubuntuユーザー名}\workを指定します。

開発を円滑にするため、Ubuntuに接続したVisual Studio Codeを使ってRemote側に拡張機能Dockerをインストールします。

サンプル実行

実行サンプルとして、Django用のHello Worldを説明します。

  1. Visual Studio CodeのトップメニューTerminal > New Terminalをクリックします。ここからUbuntuを操作することができます。
  2. ターミナルから下記コマンドを実行します。
    1. sudo apt update
    2. sudo apt install python3-pip
    3. pip3 install Django
  3. ソースコードを入手します。
    1. cd ~/work
    2. git clone https://github.com/mattwojo/helloworld-django.git .
    3. cd helloworld-django
  4. Visual Studio CodeのトップメニューRun > Start Debuggingをクリックし、プロジェクトをスタートします。実行環境の選択が表示されたら、Python3を選択してください。
  5. Windowsのブラウザから、下記にアクセスしてWebが起動していることを確認します。
  6. Powershellから下記コマンドを実行すると、サンプル用コンテナが起動していることが分かります。
    • docker ps

まとめ

Docker Desktop for WindowsとWSL2のLinuxディストリビューションを連携させることで、Linuxでのコンテナ開発環境を簡単に構築できます。またVisual Studio Codeなどエディタをリモート接続することで、効率的に開発を進められます。

以上、Windowsユーザー用Linux コンテナ開発環境構築の紹介でした。

スポンサーリンク
スポンサーリンク
スポンサーリンク
開発
Tech WalkIt

コメント