python開発環境構築(VSCode - Rancher Desktop - Pipenv)for Windows
はじめに
普段業務でRancherDocker+DevContainer+Pipenvを使った開発環境で開発を進めているのですが、環境構築手順が何もない状態で自分一人で全部できるのか中々自信がなく、今まで出来ていませんでした。。。
自信をつけるためにも今回からまとめていこうと思います!
事前準備
RancherDesktop
DockerDesktopが商用利用では有料化となったため。個人学習目的であれば無料ですが、実際に業務で使用する機会が多そうなのでこちらを選択。
インストール手順
VSCode
業務で使用しているのもそうですが、VSCodeの方がUI的にわかりやすいのと、拡張機能が充実してるので選択
WSL
Windows上でLinuxOSをエミュレートする機能。(Macだと不要なのにWindowsは少し面倒ですね)
※Macと違いWindowsはWSL経由でDocker操作を行うためメモリやプロセッサの割り当て設定はRancherDesktopのPreferencesから行うことができないため、以下を参考に設定
手順
以下の階層でそれぞれファイルを作成する
![](https://assets.st-note.com/img/1726225112-x7PJCqZnEd6YXzaHkIeD2Nrp.png)
Dockerfile
FROM python:3.12
ENV PIPENV_VENV_IN_PROJECT=1
RUN pip install --upgrade pip && \
pip install pipenv
RUN pipenv install
devcontainer.json
{
"name": "docker_pipenv",
"dockerFile": "Dockerfile",
"customizations": {
"vscode":{
"settings": {
"python.locator": "js",
"python.defaultInterpreterPath": ".venv/bin/python",
"terminal.integrated.shell.linux": "/bin/bash",
"python.formatting.autopep8Path": "/usr/local/py-utils/bin/autopep8",
"python.formatting.blackPath": "/usr/local/py-utils/bin/black",
"python.formatting.yapfPath": "/usr/local/py-utils/bin/yapf"
},
"extensions": [
"ms-python.python",
"ms-python.vscode-pylance",
"mhutchie.git-graph"
]
}
},
"postStartCommand": "bash ./.devcontainer/postStartCommand.sh"
}
postStartCommand.sh
#!/bin/bash
pip install pipenv
pipenv sync
pipenv sync -d
以下の拡張機能を入れる
![](https://assets.st-note.com/img/1726225523-trcJPaZBF4uwjA6mb5UKefIC.png)
Ctrl + Shift + P で コンテナでリビルドを選択したら完了。
苦労したところ
こちらで報告されている事象になり、「ターミナルを再アクティブにしています。」が終わらない状態になった。
devcontainer.jsonのsettingで、以下を追加することで解決
"python.locator": "js",
おわりに
Dockerfileの中身など無駄な処理が入っているかもしれません、、
ただ、ひとまず自分一人で開発環境を作ることができたので、これを実施する前よりは自信がついたと思う。