Djangoプロジェクトで設定しておくべきこと (3) VSCode
前回の記事の続きです。
今回もDjangoプロジェクトの環境設定をしていきます。
1. VSCode
VSCodeからDockerコンテナを開発環境として使用できるようにします。
この機能を導入すると
- 開発者全員が同じ環境で、アプリケーションを実行できる
- 開発者全員がコードベースでの作業に必要なツール、ライブラリ、ランタイムを使用できる
ようになります。
つまり、IDEの設定を含めて開発者全員が同じ環境で開発できます。
VSCodeとDockerを使う最大の利点はこの点であるいっても過言ではありません。
1-1. Remote - Containersのインストール
まずは、VSCodeにRemote - Containersを導入します。
これはインストールするだけです。
1-2. devcontainer.json
次にdevcontainer.json を作成します。
VS Codeのコンテナ構成は、devcontainer.jsonファイルに保存します。
開発コンテナの設定は、.devcontainer/devcontainer.jsonに配置します。
devcontainer.jsonには以下のような記載をします。
{
"name": "django_template",
"dockerComposeFile": [
"../docker-compose.yml"
],
"service": "django_template",
"workspaceFolder": "/usr/src/app",
"extensions": [
"ms-python.python"
],
"shutdownAction": "stopCompose"
}
ファイルの内容をみると、docker-composeを起動させる設定ということが、なんとなくわかるのではないでしょうか。
docker-composeをVS Codeの開発用として機能追加したい場合は、.devcontainer/docker-compose.extend.ymlファイルを作成して機能拡張することもできます。
私は個人的に不要と思っているので、ここでの説明は割愛します。
1-3. launch.js
次はデバッグ用のlaunch.jsを作成します。
launch.jsを作成することでデバッグボタンで開発環境のDjangoを起動できるようにします。
設定は.vscode/launch.jsに配置します。
{
"version": "1.0.0",
"configurations": [
{
"name": "Python: Django",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/manage.py",
"args": [
"runserver",
"0.0.0.0:5000"
],
"django": true
}
]
}
ファイルを設定後、VS Codeのデバッグボタンを押すと、Djangoが立ち上がります。
コード変更のたびにコマンドを打つ必要がなくなるので、生産性が向上します。
まとめ
今回の記事ではVSCodeとdocker-composeを連携して開発効率をさらに高める方法について記載しました。
この他にもflake8などのLinterの設定をするとより便利です。
それらについては次の記事でコードチェックの仕組みを説明してからにします。
Discussion