この記事では、python用エディターPyCharmでローカルで開発したDjangoプロジェクトを本番環境へデプロイするを紹介します。
◆動作検証環境
・ローカル環境:mac Catalina
・PyCharm:2019.2.4(Profesional Edition)
*PyCharmCE(Comunity Edition)ではデプロイの機能は使えません。
開発環境でインストールしたモジュールのエクスポート
開発環境でpipコマンドでインストールしたモジュールを本番環境でも利用できるための準備を行います。
以下のコマンドですでにインストールしたモジュールとバージョンの一覧を確認する事ができます。
1 2 3 | (venv)$ pip3 list |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | Package Version ----------------- ------- asgiref 3.2.10 certifi 2020.6.20 cffi 1.14.3 chardet 3.0.4 cryptography 3.1.1 defusedxml 0.6.0 Django 3.1.2 django-allauth 0.43.0 django-rest-auth 0.9.5 djangorestframework 3.12.1 ... ... |
エクスポートの準備として、インストールしたモジュールの内容をTextに書き出し、デプロイ先で一括インストールできるようにします。
下記のコマンドを行います。
1 2 3 | (venv)$ pip3 freeze > modules.txt |
これでプロジェクトと同じ階層にmodules.txt が作成されるので、デプロイ時にこちらのファイルも含めます。
PyCharmのデプロイ設定
[Tools]→[Deployment]→[Configuration]を選択します。
左上の[+]ボタンを押し、[SFTP]を選択します。
設定に名前をつけます。
Root path:の設定は、Autodetectを選択すると自動で設定してくれます。
次にMappingの設定を行います。
Deployment path:はそれぞれの環境に合わせて設定します。
最後にExcluded Pathsの設定です。
ここでは、デプロイを行わないディレクトリやファイルの設定をします。
- 仮想環境を設定しているディレクトリ(本記事内ではvenv)
- 各アプリケーションのmigrationsディレクトリ(1回目のみはデプロイする(その際0001_initial.py などmakemigrationsで作成されたファイルがある場合は1回目のデプロイ時も含めないよう設定する))
*他にも、一度デプロイした後変更しないファイルがある場合はそちらも含めると良いでしょう。
を指定してデプロイに含めない設定とします。
PyCharmのデプロイ設定
デプロイするには、まずデプロイの対象のディレクトリを選択します。
最初のデプロイではプロジェクト全体の選択が必要ですが、2回目以降は変更したディレクトリやファイルのみを選択してデプロイすることで作業が短縮されます。
デプロイの設定が完了すると[Tools]→[Deployment]を選択すると[Up load to YOUR PROJECT]が選択できるようになります。
選択するとデプロイが開始されます。
以上、python用エディターPyCharmでローカルで開発したDjangoプロジェクトを本番環境へデプロイするを紹介しました。