DockerによるDjango開発環境

LINEで送る
Pocket

DockerによるDjango開発環境

ソースコードの開発は、Windows上のPyCharmで、アプリケーションの動作確認はDockerコンテナ(Ubuntu)のrunserverで実行できる環境を構築します。

 

全体像は、次のようになります。

DockerによるDjango実行環境

 構築手順:

Docker Desktop for Windows」をインストール

Docker Desktop for Windowsは、Hyper-V 仮想化を使用します。Windows 10 上で Hyper-V を使用するためには、Windows 10 Professional 以上のエディションが必要です。

なお、今回インストールしたデバイスの仕様とWindowsの仕様は次の通りです。

プロセッサ Intel(R) COre(TM) i5-5200U CPU @ 2.20GHz 2.20GHz

実装RAM 4.00 GB

システムの種類 64 ビット オペレーティング システム、x64 ベース プロセッサ

エディション Windows 10 Pro

 

事前準備

Docker Desktop for Windows をインストールする事前準備として、Windows マシンの Hyper-V を有効化しておく必要があります。

また、Docker公式サイトにて、Docker ID というアカウントを取得して必要があります。

 

Hyper-Vの有効化 にする

Windows ボタンを右クリックし、[アプリと機能] を選択します。

[関連設定] の下にある [プログラムと機能] を選択します。

[Windows の機能の有効化または無効化] を選択します。

[Hyper-V] を選択して、[OK] をクリックします。

有効化するには Windows マシンの再起動が必要です。

 

 

Docker IDの取得 する

Docker Desktop をインストールするには、Docker IDというアカウントが必要となります。

事前に、Docker 公式サイトにて、Docker IDのアカウントを取得してください。

 

次のURLからサインアップしアカウントを作成してください。

 

https://hub.docker.com/signup

 

Docker Desktop for Windows のインストール

 

インストール

 

インストーラーをダウンロードする

次のサイトで Docker for Windows インストーラーをダウンロードしてインストールします。

 

https://www.docker.com/products/docker-desktop

 

[Download Desktop for Mac and Windows] ボタンをクリックします。

 

次の画面で、 [Download Desktop for Windows] ボタンをクリックして、[Docker Desktop Installer.exe] をダウンロードします。

 

Windowsマシンへのインストールする

ダウンロードした [Docker Desktop Installer.exe] ファイルを、エクスプローラーから実行してください。

ダウンロードが完了すると、Configraton の画面が出ます。そのまま「OK」を押してください。

 

[Use Windows containers instead of Linux containers (this can be chananged after installation] の行にはチェックボックスが付いていません。これはコンテナで Windows を動かす場合のオプションです。

今回は Ubuntuを動かしたいのでこのチェックボックスは不要です。

 

インストールが始まります。しばらく待機してください。

ここまでで Docker Desktop for Windows のインストールは完了です。

 

 

動作確認

 

Docker のバージョンの確認をしてみる

まずは、インストールされた Docker のバージョンを確認してみましょう。

Windows PowerShell を起動して、docker version コマンドでバージョン情報が表示されます。

Docker version

Hello Worldを動かしてみる

おなじみの hello world を実行します。

docker run コマンドは、イメージからコンテナを起動するコマンドです。

 

 

hello-world というイメージからコンテナを作成して起動するという意味になります。

ただし、ローカルに hello-world イメージがないため、Docker デーモンが hello-world イメージを Docker HubDocker社が運営する、インターネット上でイメージを公開・共有したりする Docker Registry サービス)からダウンロードし、イメージからコンテナを起動します。

イメージはファイルシステムとアプリケーションやミドルウェア、実行時に必要とするパラメータから構成されます。

このコンテナは次のような標準出力を出して終了します。

 

 

 

これでDockerの動作確認ができました。

 

Djangoプロジェクトを作成

 

PyCharmによるDjango開発環境の構築」の手順で、

\Users\user\PycharmProjects\mysiteDjangoプロジェクトを作成します。

 

 

DockerfileからDockerイメージを作成

 

次に示すDockerfileDjangoプロジェクトの直下に作成します。

ファイル名は、拡張子なしの「Dockerfile」とします。

 

 

次のコマンドを実行して、DockerfileからDockerイメージを作成します。

このDockerfileから、python3.7.5をインストールしたUbuntu 18.04ベースのイメージを作成することができます。

 

Dockerコンテナ の作成・起動

 

コンテナ を作成・起動する

Dockerイメージが作成できたら、Dockerコンテナを作成して起動します。

 

次のように docker run コマンドを実行して、コンテナを作成・起動します。

Dockerコンテナを実行して、bashで対話型シェルにログインします。

 

runserverのために、8000番ポートを開けておきます。

また、DjangoプロジェクのディレクトリをDocker側の「/root/mysite」ディレクトリと同期させます。

 

 

 

Dockerコンテナ上で事前準備

「393dff996336」は、Dockerコンテナ作成時に自動的に作成される「コンテナID」です。

 

 

動作確認

これで、PyCharmで作成したソースコードを、Dockerコンテナ上のUbuntuで動作確認することができます。

ホスト側の環境を壊すこともありません。

最後にrunserverを実行して、Windows上のブラウザで動作確認を行います。

 

 

Dockerコンテナ(コンテナID:393dff996336)を起動して、ログイン。

MySQLサービスを起動して、作成したユーザでMySQLに接続して、「quit」コマンドで抜ける。

次に、「python3 manage.py runserver 0.0.0.0:8000」で、サーバーを起動する。

ブラウザで、「http://localhost:8000/hello」で動作を確認。「hello」は、Djangoのアプリケーション名。

 

LINEで送る
Pocket

PyCharmによるDjango開発環境構築

LINEで送る
Pocket

PyCharmによるDjango開発環境構築

ローカルPCPyCharm CECommunity Edition)を使用してDjangoの開発環境を構築します。

OSは、64bitWindows10 Pro Hyper-Vが利用できることが環境構築要件となります。

全体像は、次のようになります。

PyCharmによるDjango開発環境構築

PyCharmは、IDE(統合開発環境)で、Pythonで開発する上で便利な機能が多数揃っています。

無償版PyCharm CEのインストール

PyCharmの公式ダウンロードサイトから「PyCharm CE」のインストーラをダウンロード後、インストーラをダブルクリックしてインストールを実行します。 

https://www.jetbrains.com/pycharm/download/

 

初期設定

PyCharmは、「out of the box(箱から取り出してすぐに使える)」というのが大きな魅力のひとつです。

環境設定画面は、[File]>[Settings]Windowsは、Ctrl+Alt+S)から開くことができます。

コード表示の設定

ソースコードの行番号をデフォルトで表示し、空白スペースを判別できるようにする設定

環境設定画面(Settings)の[Editor]>[General]>[Appearance]から、[Show line numbers]および[Show whitespaces]にチェックを入れます。

import分表示の設定

デフォルトでは、import文が短く折りたたまれた状態で表示されてしまうので、環境設定画面の[Editor]>[General]>[Code Folding]から「imports」のチェックを外します。

メモリ設定

ヒープメモリの最大サイズを増やしておきます。

上部メニューの[Help]>[Edit Custom VM Options]をクリックすると「pycharm64.exe.vmoptions」というファイルが開きます。

-Xmx750m」となっている箇所を「-Xmx1500m」と書き換えて、PyCharmを再起動します。

初期値の750MB1,500MBに変更します。

 

ショートカット

PyCharmには便利なショートカットがたくさんあります。

[Help]>[Keymap Reference]でキーマップ・リファレンスを見ることができます。

PyCharmヘルプの日本語版サイトからも見ることができます。

 

https://pleiades.io/sites/willbrains.jp/keymap/pdf/shortcut_pycharm_windows.pdf

 

PyCharmヘルプの日本語版サイト

https://pleiades.io/help/pycharm/

 

 

 

PyCharmでプロジェクトを作成

PyCharm起動後に「Create New Project」をクリックして、プロジェクトを新規作成します。

プロジェクト作成時に必要なものは、以下の4つです。

 

  1. プロジェクトを格納するワークスペースのディレクトリのパス
  2. 仮想環境のディレクトリのパス
  3. Pythonインタープリタのパス(利用するPythonのパス)Windowsの場合は、「where python」で表示されるパスを指定します。
  4. 仮想環境の指定、「Virtualenv」を指定することでプロジェクトごとの仮想環境が作成されます。

新規作成画面で次の内容を入力します。

 

 PyCharmDjangoをインストール

PyCharmDjangoパッケージをインストールするには、環境設定画面で行うことができます。

環境設定画面は、[File]>[Settings]Windowsは、Ctrl+Alt+S)から開くことができます。

[Project:mysite]>[Project Interpreter]の画面で右側の+アイコンをクリニックします。

クリニックすると、「Available Packages」画面が開きます。検索窓に「django」と入力するとDjangoパッケージが表示されますので、これを選択して、「install Package」ボタンをクリックしてインストールします。

このようにPyCharmでは、pipを利用しなくても必要なパッケージをインストールできます。

プロジェクのベースとなるディレクトリを「mysite」として、この直下に「venv」という仮想環境の情報を保管しておくためのディレクトリをPythonインストール時に作成してあります。

-m venv」で「venv」モジュールを利用して仮想環境を作成して、仮想環境の情報保管先は「venv」ディレクトリを指定します。

Djangoプロジェクトのひな形を作成

PyCharmの左側にある「Terminal」をクリックすると仮想環境がアクティベートされた状態のターミナルが起動します。

このターミナル上で、次のコマンドを実行してDjangoプロジェクトのひな形を作成します。

 

第一引数の「config」は、任意の「設定ディレクトリ」名を付与することができます。「root」でも構いません。

第二引数の「.」は、プロジェクトを格納するワークスペースの「ベースディレクトリ」を作成しないようにするための指定です。

ベースディレクトリ「mysite」は、既に作成済みです。

 

LINEで送る
Pocket