背景
GitHubに公開されているPythonプログラムを手軽に試したいと思ったことはありませんか?でも、そのためだけにたくさんのモジュールを自分のコンピュータにインストールしたくないこともあるでしょう。また、使い捨てのDocker環境を作成するのも手間がかかります。そんな場合、どうすれば良いのでしょうか?
解決策
Pythonのvenv
機能を使って、プロジェクトごとに独立したPython環境を手軽に構築できます。これにより、必要なモジュールを自分のコンピュータ全体にインストールする必要はありません。
手順
以下は、使い捨て環境を構築する手順です。以下のディレクトリ構造を仮定します。
~/program% ls
auth/ middlewares/ pyrightconfig.json routes/
logger.py models/ repository/ supabase/
main.py requirements.txt utils/
- まず、このプロジェクト専用の仮想環境を
venv
を使って構築します。例えば、myenv
という名前の環境を作成すると、同名のディレクトリが生成されます。
~/program% python3 -m venv myenv
~/program% ls
auth/ middlewares/ pyrightconfig.json routes/
logger.py models/ repository/ supabase/
main.py myenv/ requirements.txt utils/
2. myenv
ディレクトリ内のactivate
ファイルをsource
コマンドで指定(Windowsの場合はスクリプトを実行)すると、仮想環境に入ることができます。
# Linux/Mac
~/program% source myenv/bin/activate
# Windows
myenv\Scripts\activate
(myenv) ~/program%
3. 仮想環境に入ると、プロンプトが (myenv)
と変わります。この状態でpip install
を実行すると、モジュールはこの仮想環境にのみインストールされます。
(myenv) ~/program% pip3 install -r requirements.txt
4. 仮想環境から抜ける場合は、deactivate
コマンドを実行します。
(myenv) ~/program% deactivate
~/program%
これで、Pythonモジュールをプロジェクトごとに独立した環境で管理できるようになり、不要な環境へのインストールを回避できます。