4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Windows(WSL2)上にDjango開発環境を構築する

Last updated at Posted at 2022-01-10

#はじめに
Window10 home上にDjangoの開発環境を構築する方法を纏めます。

#構成
ホストOS: Windows10 Home(x64、21H1)
ゲストOS: WSL2上にUbuntu 20.04.3 LTSをインストール
IDE: Visual Source Code 1.63.2
Python: Python 3.8.10
仮想環境: venv
フレームワーク: Django 4.0.1

#WSL2、Ubuntuインストール

  1. WSL2、Ubuntuのインストール
    PowerShellで以下コマンドを実行する。これでWSL2とUbuntuがインストールされる。

    powershell
    wsl --install
    
  2. Ubuntuのアップデート
    Ubuntuコンソールで以下を実行して、Ubuntuをアップデートする。

    bash
    sudo apt update && sudo apt upgrade
    

1. pipのインストール

 ```bash:bash
 sudo apt install python3-pip
 ```

--- 以下の設定は任意 ---

* WSL2の最大メモリ設定
エクスプローラで%USERPROFILE%を開き「.wslconfig」ファイルを新規作成する。

 ```ini:.wslconfig
 [wsl2]
     memory=4GB
 ```
.wslconfigの設定を反映するにはWSL2の再起動が必要なため、**PowerShell**で`wsl.exe --shutdown`を実行する。
Ubuntuのコンソールを開き、`free -h`でメモリの割り当て状況を確認する。
以下の例では、Memのtotalが3.8Giになっているので正しく反映されている。

 ```:free結果
               total        used        free      shared  buff/cache   available
 Mem:          3.8Gi       435Mi       1.7Gi       0.0Ki       1.8Gi       3.2Gi
 Swap:         1.0Gi          0B       1.0Gi
 ```

* WindowsTerminalのインストール
[こちら](https://dev.classmethod.jp/articles/linux-beginner-wsl2-windowsterminal-setup/)のページを参考に設定した。

#仮想環境(venv)のインストール
Django以外の環境と共存させる為に、venvの仮想環境上にDjango環境を構築する。


1. venvインストール

 ```bash:bash
 apt install python3.8-venv
 ```
1. プロジェクトフォルダ作成

 ```bash:bash
 mkdir HelloWorld
 cd HelloWorld

1. 仮想環境作成

 ```bash:bash
 python3 -m venv .venv
 source .venv/bin/activate
 ```

 activate実行後に以下の様にシェルの先頭が`(.venv)`となっていれば仮想環境に入れている。

 ```bash:bash
 (.venv) hoge@hoge:$~/HelloWorld
 ```
仮想環境から抜けるには以下を実行する。

 ```bash:bash
 deactivate
 ```

#Visual Studio Codeの設定
1. Remote-WSL 拡張機能をインストールする。
1. 上で作ったプロジェクトフォルダ上で以下コマンドを実行し、WSL2上のVSCodeリモートサーバーを起動する。

 ```bash:bash
 code .
 ```
 VSCodeが起動し、左下のインジケーターに`WSL:Ubuntu`と表示されればWSL2上のリモートサーバーに接続できている。
1. ubuntu用のPython拡張機能をインストールする。
Windows側に入っているPython拡張機能とは別にWSL2側にPython拡張機能をインストールする必要がある。
VSCodeの拡張機能ウィンドウで**Python機能拡張**をインストールする。

#Djangoのインストール
1. 仮想環境を有効にする。
VSCodeのコンソールで以下コマンドを事項し、仮想環境に入る。Djangoは仮想環境内にインストールする。

 ```bash:bash
 source .venv/bin/activate
 ```

1. Djangoのインストール

 ```bash:bash
 python3 -m pip install django
 ```

1. Djangoプロジェクトの生成

 ```bash:bash
 django-admin startproject web_project .
 ```
 成功するとプロジェクトフォルダ下に`manage.py`、`web_projectフォルダ`が作成される。

1. Django開発サーバーの起動

 ```bash:bash
 python3 manage.py runserver
 ```

 `Starting development server at http://127.0.0.1:8000/`と表示されたらサーバー起動成功。
 ブラウザで`http://127.0.0.1:8000/`を開いてDjangoの規定のページが表示さえれば正常動作している。

# 参考にしたサイト

* [Windows で Web 開発に Python を使用する](https://docs.microsoft.com/ja-jp/windows/python/web-frameworks)
* [Linux初心者がWSL2とWindows Terminalのセットアップをやってみた](https://dev.classmethod.jp/articles/linux-beginner-wsl2-windowsterminal-setup/)
4
5
1

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
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?