エレクトロニクス

WSL2 で Docker 開発環境を構築する基本手順

背景

WSL2は軽量な仮想環境としてWindows上でLinuxを利用できるため、Dockerを使った開発環境にも適しています。Docker Desktopを使用すると容易にコンテナを扱えますが、WSL2と連携させることでリソース効率とファイルシステムのパフォーマンスを向上させることができます。ここでは、WSL2上にDockerを導入し、基本的な開発環境を構築する手順を紹介します。

手順

  1. Docker Desktopのインストール
    まず、公式サイトからDocker Desktop for Windowsをダウンロードし、インストールします。インストール時にWSL2統合を有効にするオプションを選択しておきます。これにより、Dockerが自動的にWSL2ディストリビューションと連携します。
  2. WSL2統合を有効にする
    インストール後、Docker Desktopの設定から「Resources」→「WSL Integration」を開き、利用したいディストリビューション(例:Ubuntu)のスイッチをオンにします。この設定を有効にすることで、そのディストリビューション内でdockerコマンドを直接使用できます。
  3. Docker Composeのセットアップ
    複数のサービスを連携させるにはDocker Composeが便利です。最近のDocker Desktoルすることもできます。Composeファイル(docker-compose.yml)を作成し、WebアプリとDBなど複数コンテナを定義すると、docker-compose up -dで一括起動できます。
  4. プロジェクトのボリューム共有
    WSL2環境ではWindows側のファイルシステムよりもLinux側に配置した方が性能が良いため、プロジェクトディレクトリをLinux側に置くことが推奨されます。例えば~/projects/myappにソースコードを置き、Docker Composeのvolumesにそのパスを指定することで、ホストとコンテナ間でファイルを共有します。
  5. イメージのビルドと実行
    Dockerfileをプロジェクトに用意し、ベースイメージ、依存パッケージ、アプリケーションコードのコピーと実行コマンドを定義します。docker build -t myapp .でイメージを作成し、docker run -p 8000:8000 myappでアプリケーションを起動します。コンテナが正しく起動すれば、ブラウザからアクセスして動作を確認できます。
  6. まとめ
  7. WSL2上でDocker開発環境を整えることで、ネイティブに近いパフォーマンスを享受しながらコンテナベースの開発が行えます。Docker DesktopのWSL統合機能を利用することで、複雑な設定なしにdockerdocker-composeを使用できるため、手軽に開発を開始できます。プロジェクトをLinux側に配置し、Composeを活用することで、効率的な環境構築と運用が可能になります。pには同梱されていますが、sudo apt install docker-composeで個別にインストー
  • この記事を書いた人

たけぞう

熊谷に住みながら都内のIT企業でエンジニアをしています。ガジェットやアウトドア用品についてレビューをしていきます。 趣味はスポーツジムでトレーニングやジョギングをすることです。

-エレクトロニクス