WSL2 の Python スクリプトを Windows 側の VSCode で開発する
まえがき
前回の記事で、Windows 10 Home に WSL2 + Ubuntu 20.04 の環境を構築しました。
もともとやりたかったのは、ここで Web サーバの開発をすることです。
サーバは Pipenv を使って Python で開発しています。
今回はそれを Windows 側の VSCode で開発する環境を整えてみます。
WSL2 Ubuntu 20.04 に Pyenv + Pipenv 環境を整える
Pyenv のインストール
WSL2 の Shell で以下を順番に入力します。
$ sudo apt install --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev $ git clone https://github.com/pyenv/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc $ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc $ exec "$SHELL"
インストールができていることを確認するために、以下のコマンドを入れます。
バージョンが帰ってくれば OK です。
$ pyenv --version
Pipenv のインストール
まず最初に pip をインストールします。
sudo apt install python3-pip
次に pipenv をインストールします。
$ pip3 install --user pipenv $ echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc $ exec "$SHELL"
インストールができていることを確認するために、以下のコマンドを入れます。
バージョンが帰ってくれば OK です。
$ pipenv --version
Pipenv で新しいプロジェクトを作成する
開発を行うディレクトリに移動したら、使いたい Python のバージョンを決めて、
以下のようにプロジェクトを作成します。
$ pipenv --python 3.7.11
このバージョンが Ubuntu 内になければ、Pyenv を使用してインストールするかと聞かれるので
y にすれば勝手にインストールしてくれます。
VSCode でリモート開発のセットアップ
基本的にはここの手順に従います。
Remote Development Extension のインストール
VSCode の拡張パックで Remote Development をインストールします。
WSL2 のパッケージインストール
自分の環境では不要でしたが、参照サイトでは以下のコマンドを入れよと書いてありました。
$ sudo apt update $ sudo apt install wget ca-certificates
開発するディレクトリを VSCode で開く
WSL 側のシェルで以下のコマンドを叩くと、最初に VSCode Server が自動的にインストールされます。
その後、このディレクトリを VSCode で開いてくれます。
$ code .
Python Extension を WSL 側にインストールする
Windows 側にはすでに Python Extension がインストールされています。
しかし WSL 側にもインストールする必要があります。
そのため Python Extension を探します。
Install in WSL をクリックしてインストールします。
Python Interpreter を選択する
Python Interpreter として、さきほど Pipenv でインストールした Python を選択します。
VSCode の左下をクリックするとリストが出てくるので、それらしきものを選択します。