📚
poetry+pyenvでバージョン指定がうまくいかない場合
こんにちは!kirigayaです。
今回はpoetry+pyenvでpythonのバージョン指定がうまくいかない時に試すことを書きます。
Docker使えばええやん!という意見は受け付けませんw
poetryのデフォルトバージョンやbrewでインストールされるpythonバージョンとは別のバージョンでpoetryの仮想環境を作りたいといったことがあると思います。
それではさっそく設定していきましょう。今回は3.12.0
から3.10.0
に変更します。
※既にpoetryの仮想環境がある人は削除しておきましょう。
poetry env list
poetry env remove 仮想環境の名前
さらにpyproject.tomlファイルのpythonバージョンも変更します
python = "^3.10"
python3.10.0
をインストールします
pyenv install 3.10.0
現在のバージョンとインストール済みのバージョンを確認します
pyenv version
pyenv versions
全体で使う場合
pyenv global 3.10.0
プロジェクトごとに設定したい場合はプロジェクトのディレクトリまで移動してからpythonのバージョンを指定します。うまく設定できると.python-version
ファイルが作成されます。
cd PROJECT_DIR
pyenv local 3.10.0
次にpoetryの設定をします。プロジェクト直下に.venv
を作成する設定です
poetry config virtualenvs.in-project true
pyenvのpythonを指定して仮想環境を作成する
poetry env use ~/.pyenv/shims/python
仮想環境の設定を確認する
poetry env info
どうでしょう?バージョンは3.10.0
になっていると思います。
最後に仮想環境を立てて終わりにしましょう。
※ 前回、仮想環境作っていた人はpoetry lock --no-update
しておきましょう。
poetry install --no-root
poetry shell
仮想環境が作成できたと思います。お疲れ様でした。
Discussion