はじめに
DjangoをWSL2のUbunutuにインストールしたPythonのpyenvを利用した仮想環境に構築し、Djangoインストールするまで
構築環境の目標
Windows 11 home version 23H2
WSL2(Ubunutu) デフォルトでインストールされるバージョン
VSCODE
Python 3.12.3
Django 5.1.1
環境構築の下準備
Windows Terminalを最新の状態に更新する。 開くボタンのみになればOK
Windows PowerShellを右クリックして管理者として実行
Windows power shellに下のコマンドをコピペする。 ctrl + vで貼り付けられます。
wsl --install
詳しくは下のページから見られます。
biosで仮想化が有効されてない場合ダメだったりするのでお持ちのPCのbios設定をしておいてください。
UNIX usernameに任意の名前を入れて
Passwordも作ってください。
打っても画面に表示されませんがしっかり認識されていますので問題ありません。
sudo apt update
sudo apt upgrade
bashコマンドといいますがWSL2のUbunutuはCUI(コマンド ユーザー インターフェース)
でosのアップデートや周辺ソフトがアップデートされます。
上記コマンドを実行後はこのようになります。
バージョン管理ツールのGitをインストールします。Gitは後程利用します。
sudo apt-get install git-all
pyenvをインストールするために必要な依存パッケージをインストールします。
sudo apt install -y build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev \
python-openssl git
Gitを使ってpyenvをインストールします。
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
上記のコマンドでUbuntuの/root/.pyenvにpyenvをインストール
シェルの設定
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.profile
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.profile
echo 'eval "$(pyenv init -)"' >> ~/.profile
exec "$SHELL"
# pyenvにインストールできるPython一覧を取得(1ページごと)
pyenv install -l | less
こちらのPythonJapanが紹介している、非公式ダウンロードリンクからsourceタブを開いて、好きなPythonのバージョンをDLしてください。
自分の場合は3.12.3
ダウンロードしたファイルはエクスプローラーからLinuxのUbunutuフォルダのホーム、自分のユーザー名のフォルダに入れておきます。
#/home/ユーザ名 以外に配置した場合は、cdコマンドでファイルがある場所へ移動する
#圧縮ファイルの解凍
#Pyhtonのバージョンによってファイル名が変わるので自分のバージョンに書き換えてください。
tar xJf Python-3.12.3.tar.xz
#解凍後のディレクトリに移動
#Pyhtonのバージョンによってファイル名が変わるので自分のバージョンに書き換えてください。
cd Python-3.12.3
#ビルド、インストールを実行
./configure
make
sudo make install
Python 3.12.3 のインストール
pyenv を使用して、指定したバージョンのPythonをインストールします。
pyenv install 3.12.3
インストールが完了したら、グローバルで使用するPythonのバージョンを設定します。
pyenv global 3.12.3
インストールが正しく行われたか確認するために、以下のコマンドを実行します。
python --version
Python 3.12.3 と表示されれば成功です。
仮想環境の作成
プロジェクトごとに依存関係を管理するために、仮想環境を作成します。ここでは venv を使用します。
python -m venv myenv
仮想環境を有効にします。
source myenv/bin/activate
Djangoのインストール
仮想環境内で pip を使用してDjangoをインストールします。
pip install --upgrade pip
pip install Django==5.1.1
インストールが完了したら、Djangoのバージョンを確認します。
5.1.1 と表示されれば成功です。
Djangoプロジェクトの作成
新しいDjangoプロジェクトを作成します。ここでは myproject という名前で作成します。
django-admin startproject myproject
プロジェクトディレクトリに移動します。
cd myproject
開発用サーバーを起動して動作確認を行います。
python manage.py runserver
ブラウザで http://127.0.0.1:8000/ にアクセスし、Djangoのウェルカムページが表示されれば成功です。
VSCodeの設定
VSCodeを使用して開発を行うために、WSL2と連携させます。
VSCodeのインストール
Windows側にVSCodeがインストールされていない場合は、公式サイトからインストールしてください。
Remote - WSL拡張機能のインストール
VSCodeを開き、拡張機能マーケットプレイスから「Remote - WSL」を検索してインストールします。
WSL環境でVSCodeを起動
WSL2のUbuntuターミナルで以下のコマンドを実行します。
code .
これにより、現在のディレクトリがVSCodeで開かれ、WSL2環境と連携されます。
Python拡張機能のインストール
VSCode内でPython拡張機能をインストールします。これにより、コード補完やデバッグ機能が利用可能になります。
参考リンク