子育てしながらエンジニアしたい

現在 7 歳 女の子の子育て中エンジニアによる、技術系 + 日常系ブログ。

WSL2 の Python スクリプトを Windows 側の VSCode で開発する

まえがき

前回の記事で、Windows 10 Home に WSL2 + Ubuntu 20.04 の環境を構築しました。

edosha.hatenablog.jp

もともとやりたかったのは、ここで 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 にすれば勝手にインストールしてくれます。

f:id:edosha:20211109150638p:plain
Pipenv プロジェクトの作成

VSCode でリモート開発のセットアップ

基本的にはここの手順に従います。

docs.microsoft.com

Remote Development Extension のインストール

VSCode の拡張パックで Remote Development をインストールします。

f:id:edosha:20211109151250p:plain
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 を探します。

f:id:edosha:20211109155639p:plain
Python Extension

Install in WSL をクリックしてインストールします。

Python Interpreter を選択する

Python Interpreter として、さきほど Pipenv でインストールした Python を選択します。
VSCode の左下をクリックするとリストが出てくるので、それらしきものを選択します。

f:id:edosha:20211109160130p:plain
Python Interpreter の選択