Windows WSL Docker+Git 開発環境構築（Docker Desktop不使用）前編

## はじめに
この記事では、**Windows 11** 環境において、**WSL（Windows Subsystem for Linux）** [^wsl] を活用し、**Docker** [^docker] および **Git**[^git]を使った開発環境を構築する手順を開発者向けに解説します。<br>

WindowsでDockerを利用する場合はDocker Desktopなどを利用するのが一般的ですが、**ファイルシステムの違いによりパフォーマンスが低下**するケースがあるため、この記事では **WSL上のLinuxディストリビューション（Ubuntu[^ubuntu]）にDockerをインストール** し、より高速で安定した開発環境を構築する方法をご紹介いたします。

前後編に分け、前編ではWSLのインストールからUbuntuのセットアップ、DockerとGitのインストールとGitのセットアップまでを解説します。

この記事がWindowsでの快適な環境構築の足がかりとなれば嬉しいです。

**↓↓↓後編↓↓↓**

https://qiita.com/joyrswd/items/99460a9920c93ff66351


## 目次
- [はじめに](#はじめに)
- [動作環境](#動作環境)
- [操作手順](#操作手順)
    - [1. WSLのインストール](#1-wslのインストール)
    - [2. Ubuntuのインストールとセットアップ](#2-ubuntuのインストールとセットアップ)
    - [3. DockerとGitのインストール](#3-dockerとgitのインストール)
    - [4. Gitのセットアップ](#4-gitのセットアップ)
- [備考](#備考)
    - [WSL上のLinuxファイル操作](#wsl上のlinuxファイル操作)
    - [SSHの設定について](#sshの設定について)
- [参考](#参考)

## 動作環境
- OS: Windows 11
- PowerShell: 5.1
- WSL: WSL2
- Ubuntu: 24.04 LTS

## 操作手順

### 1. WSLのインストール
1. Windowsの「スタート」メニューを開き、「PowerShell」と入力して、PowerShellを管理者として実行します。 
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3682125/f87e228d-3fef-41f6-8f2d-ada81f9f2915.png" alt="スクリーンショット 2025-05-16 161121.png"  width="50%">
    <br>
2. 以下のコマンドを入力して、WSLをインストールします。 

    ```powershell
    wsl --install
    ```
    <br>
3. インストールが完了したら、**PCを再起動**します。 
    <br>
4. 再起動後、PowerShellを再度開き、以下のコマンドを入力してWSLのバージョンを確認します。  

    ```powershell
    wsl --version
    ```

### 2. Ubuntuのインストールとセットアップ
1. PowerShellを開き、以下のコマンドを入力してUbuntuをインストールします。 

    ```powershell
    wsl --install -d Ubuntu
    # バージョンを指定する場合は、wsl --install -d Ubuntu-24.04のようにします。
    # アンインストールする場合は、wsl --unregister Ubuntu のようにコマンドを実行します。
    ```
    <br>
2. インストールが完了したら、以下のコマンドを入力してインストールされたUbuntuのバージョンを確認します。
    ```powershell
    wsl --list --verbose
    # バージョンが確認できたら、PowerShellは終了して問題ありません。
    ```
    <br>
3. Windowsの「スタート」メニューを開き、「Ubuntu」と入力して、インストールしたUbuntuを起動します。
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3682125/6bb3468c-ba4a-47e2-893b-262bfe2e14df.png" alt="スクリーンショット 2025-05-08 095454.png"  width="50%">
    <br>
4. 初回起動時に、画面の指示に従い任意のユーザー名とパスワードを設定します。\
このパスワードは頻繁に使用するため忘れないようにしてください。
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3682125/e11437ad-6724-4dd3-9aac-1fa353de4f52.png" alt="スクリーンショット 2025-05-08 095604.png" width="50%">

:::note
[WSL上のLinuxファイル操作](#wsl上のlinuxファイル操作)
:::

### 3. DockerとGitのインストール
1. Ubuntuを起動し、以下のコマンドを入力して筆者が作成したgithub上のスクリプトを実行し、DockerとGit関連パッケージをインストールします。 

    ```bash
    wget -qO- https://raw.githubusercontent.com/joyrswd/setup/main/install_docker_git.sh | bash
    # wget がインストールされていない場合は、
    # sudo apt install wget のコマンドを実行してインストールしてください。
    ```
    <br>
2. Dockerの実行権限を反映させるため、一旦**Ubuntuを終了し再度起動**します。 
    <br>
3. 以下のコマンドを入力して、Dockerが正しくインストールされているか確認します。 

    ```bash
    docker run hello-world
    # 以下のようなメッセージが表示されたらOK。
    # ...
    # Hello from Docker!
    # This message shows that your installation appears to be working correctly.
    # ...
    ```
    <br>
4. 以下のコマンドを入力して、Gitが正しくインストールされているか確認します。 
    ```bash
    git --version
    ```

:::note
[SSHの設定について](#sshの設定について)
:::

### 4. Gitのセットアップ
1. Ubuntuを起動し、以下のコマンドを入力してGitの初期設定を行います。 

    ```bash
    git config --global user.name "YourName"
    git config --global user.email "youremail@address"
    # "YourName"と"youremail@address"は、実際のユーザー名とメールアドレスに置き換えてください。
    ```
    <br>
2. 以下のコマンドを入力して、Gitの設定が正しく行われているか確認します。 

    ```bash
    git config --global user.name
    # "YourName"（入力した値）が表示されればOK。
    git config --global user.email
    # "youremail@address"（入力した値）が表示されればOK。
    ```
<br>

**↓↓↓後編↓↓↓**

https://qiita.com/joyrswd/items/99460a9920c93ff66351

## 備考

- #### WSL上のLinuxファイル操作

    WSL上のファイルは以下の2つの方法でエクスプローラーからアクセスすることで、\
    通常のWindowsのファイルと同じように操作できます。
    
    - A) Ubuntuのターミナルを使用する方法\
        Ubuntuを起動し、以下のコマンドを入力してEnterキーを押します。 
        ```bash
        explorer.exe .
        # 末尾の”.”は現在のディレクトリを指します。
        ```
        <br>
    - B) Windowsのエクスプローラーを使用する方法\
        Windowsのエクスプローラーを開き、アドレスバーに以下のパスを入力してEnterキーを押します。 
        ```bash
        \\wsl$\Ubuntu-xx.xx\home\<ユーザー名>
        # xx.xxはインストールしたUbuntuのバージョン
        # <ユーザー名>はUbuntuの初回起動時に設定したユーザー名
        ```
        <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3682125/41f58458-d68b-45c1-934d-b633da0ceec6.png" alt="スクリーンショット 2025-05-15 162033.png" width="50%">
<br>

- #### SSHの設定について
    GitHubやGitLabなどのソースホストにSSHの接続設定が必要な場合、\
    すでに公開鍵を登録済みの場合は`.ssh`ディレクトリが作成されているためそちらに秘密鍵を配置してください。 
    
    まだ公開鍵をソースホストに登録していない方は、以下のコマンドを実行して新たに秘密鍵ペアを作成し公開鍵の登録を行ってください。    
    ```bash
    ssh-keygen -t ed25519
    # 対話形式でSSH鍵を生成します。
    # 秘密鍵の保存先を聞かれますがそのままEnterキーを押してください。
    # パスフレーズは任意ですが、セキュリティのために設定することをお勧めします。
    ```


## 参考
Docker＆Gitインストールスクリプト

https://github.com/joyrswd/setup/

[^wsl]: **WSL（Windows Subsystem for Linux）** は、Windows上でLinux環境を実行できる機能です。これにより、Linuxのコマンドラインツールやアプリケーションを、Windows上でネイティブのように使用することができます。<br>

[^docker]: **Docker** は、アプリケーションをコンテナとしてパッケージ化することで、開発・実行環境の再現性と移植性を高めるプラットフォームです。<br>

[^git]:**Git** は、ソースコードのバージョン管理システムです。複数人での開発や変更履歴の管理に広く利用されており、現代のソフトウェア開発に欠かせないツールです。<br>

[^ubuntu]: **Ubuntu**（ウブントゥ）は、誰でも無料で使えるLinuxディストリビューションの1つで、使いやすさと安定性に優れており、開発やサーバー運用、教育など幅広い用途で利用されています。<br>