Djangoがどういうものか知ったので、Windows、Linux(Ubuntu)、およびmacOSでDjango開発環境をセットアップしてテストする方法を説明します。一般的なオペレーティングシステムを使っていれば、Djangoアプリケーションの開発を始められます。

前提条件: ターミナル/コマンドラインを開く方法を知っていること。開発用コンピュータのオペレーティングシステムにソフトウェアパッケージをインストールする方法を知っていること。
目的: あなたのコンピュータでDjango(2.0)の開発環境を動かします。

Django開発環境の概要

Djangoは自分のコンピュータをセットアップするのはとても簡単で、Webアプリケーションの開発を開始できます。このセクションでは、開発環境の内容を説明し、セットアップおよび構成オプションの一部の概要を示します。また、Ubuntu、macOS X、WindowsにDjango開発環境をインストールする際の推奨される方法と、そのテスト方法について説明します。

Django開発環境とは何ですか?

開発環境はDjangoをローカルコンピュータにインストールしたものです。Djangoアプリを開発し、運用環境にデプロイする前にテストできます。

Django自体が提供する主なツールは、Djangoプロジェクトを作成して作業するためのPythonスクリプトと、ローカルの(つまり、外部のWebサーバーではなく)Django Webアプリケーションをあなたのコンピュータ上のウェブブラウザでテストするための簡単な開発用Webサーバーです。

開発環境の一部を構成する他の周辺ツールがありますが、ここではカバーしません。これには、コードを編集するためのテキストエディタやIDE、コードの異なるバージョンを安全に管理するためのGitのようなソース管理ツールなどがあります。すでにテキストエディタがインストールされていると仮定しています。

Djangoの構成オプションとは?

Djangoは、インストール場所と設定の方法に関して非常に柔軟性があります。Djangoは次のようなことが可能です:

  • 異なるオペレーティングシステムへのインストール
  • ソースコード、Pythonパッケージインデックス(PyPi)、および多くの場合ホストコンピュータのパッケージマネージャアプリケーションからのインストール
  • いくつかのデータベースのうち1つを使用するように構成したり、個別にインストールして構成する必要がある場合もあります。
  • メインシステムのPython環境または分離したPython仮想環境で実行します。

これらのオプションは、それぞれわずかに異なる構成とセットアップを必要とします。以下のサブセクションでは、いくつかの選択肢について説明します。この記事の残りの部分では、いくつかオペレーティングシステムにDjangoをセットアップする方法を説明します。このモジュールの残りの部分は、セットアップが済んでいる想定です。

ノート: その他のインストールオプションについては、Djangoの公式ドキュメントでカバーされています。下記で適切なドキュメントにリンクしています。

どのオペレーティングシステムがサポートされていますか?

DjangoのWebアプリケーションは、Python 3プログラミング言語を実行できるほとんどすべてのマシン(Windows、MacOS X、Linux / Unix、Solarisなど)で実行できます。ほとんどのコンピュータで開発中にDjangoを実行できるパフォーマンスが必要です。

この記事では、Windows、macOS X、およびLinux/Unixについて説明します。

どのバージョンのPythonを使うべきですか?

最新のバージョンを使用することをお勧めします - 執筆時点ではPython 3.6です。

必要であればPython 3.4以上を使用できます(Python 3.4のサポートは将来のリリースでは廃止される予定です)。

ノート: Python 2.7はDjango 2.0では使用できません(Django 1.11.x系はPython 2.7をサポートする最後のバージョンです)。

どこでDjangoをダウンロードできますか?

Djangoをダウンロードする場所は3つあります:

  • pipを使用してPythonパッケージリポジトリ(PyPi)から。 これは、Djangoの最新の安定版を入手するための最良の方法です。
  • コンピュータのパッケージマネージャのバージョンを使用します。 オペレーティングシステムにバンドルされているDjangoのディストリビューションは、使い慣れたインストールメカニズムを提供します。 ただし、パッケージ化されたバージョンはかなり古く、システムのPython環境にのみインストールできます(これはあなたが望むものではないかもしれません)。
  • ソースからインストールします。 Djangoの開発版を入手してソースからインストールできます。 これは初心者にはお勧めできませんが、Django自身に貢献する準備ができたら必要です。

この記事ではPyPiからDjangoをインストールし、最新の安定版を入手する方法を説明します。

どのデータベースですか?

Djangoは4つの主要なデータベース(PostgreSQL、MySQL、Oracle、SQLite)をサポートしています。また、他の一般的なSQLデータベースやNOSQLデータベースにさまざまなレベルのサポートを提供するコミュニティライブラリもあります。 DjangoはObject-Relational Mapper(ORM)を使用して多くのデータベースの違いを抽象化していますが、回避する方が良い潜在的な問題がまだあります。

この記事(とこのモジュールのほとんど)では、データをファイルに保存するSQLiteデータベースを使用します。 SQLiteは軽量データベースとしての使用を目的としており、高度な並行性はサポートできません。 ただし、主に読み取り専用のアプリケーションには最適です。

ノート: Djangoは、標準ツール(django-admin)を使用してWebサイトプロジェクトを開始するときに、デフォルトでSQLiteを使用するように設定されています。 これは、追加の設定やセットアップが不要なため、入門には最適な選択です。

システム全体またはPythonの仮想環境にインストールするには?

Python3をインストールすると、すべてのPython3コードで共有される単一のグローバル環境が得られます。 環境に好きなPythonパッケージをインストールすることはできますが、一度に1つのパッケージしかインストールできません。

ノート: グローバル環境にインストールされたPythonアプリケーションは、お互いに衝突する可能性があります(例えば、同じパッケージの異なるバージョンに依存する場合)。 

Djangoをデフォルト/グローバル環境にインストールすると、コンピュータ上でDjangoの1つのバージョンのみを対象にできます。 古いバージョンに依存しているWebサイトを維持しながら、新しいWebサイト(Djangoの最新バージョンを使用)を作成したい場合、これは問題になる可能性があります。

その結果、経験豊富なPython/Django開発者は通常、独立したPython仮想環境内でPythonアプリケーションを実行します。これにより、1台のコンピュータ上で複数の異なるDjango環境を使用することができます。Djangoの開発チームは、Pythonの仮想環境を使用することをお勧めしています。

このモジュールは以下に示す方法で、仮想環境にDjangoをインストールすることを前提としています。

Python 3のインストール

Djangoを使用するには、オペレーティングシステムにPythonをインストールする必要があります。Python 3を使用している場合は、Djangoとその他のPythonアプリケーションで使用されるPythonパッケージ/ライブラリの管理(インストール、更新、削除)に使用する Python Package Indexツール『pip3』も必要です。

このセクションでは、Ubuntu Linux 16.04、macOS X、およびWindows 10のPythonのバージョンを確認し、必要に応じて新しいバージョンをインストールする方法を簡単に説明します。

ノート: 使用しているプラットフォームによっては、オペレーティングシステム独自のパッケージマネージャやその他のメカニズムを使ってPython/pipをインストールできます。ほとんどのプラットフォームでは、 https://www.python.org/downloads/ から必要なインストールファイルをダウンロードし、適切なプラットフォーム固有の方法を使用してインストールできます。

Ubuntu 16.04

Ubuntu Linux 16.04 LTSにはデフォルトでPython 3.5.2が含まれています。 これを確認するには、bash端末で次のコマンドを実行します:

python3 -V
 Python 3.5.2

しかし、Python 3(Djangoを含む)用のパッケージをインストールするために必要なPython Package Indexツールは、デフォルトでは利用できません。 次のコマンドを使用してbash端末にpip3をインストールできます:

sudo apt-get install python3-pip

macOS X

macOS X "El Capitan"やその他の最近のバージョンにはPython 3は含まれていません。これはbash端末で次のコマンドを実行することで確認できます:

python3 -V
 -bash: python3: command not found

python.orgのPython 3(pip3ツールと一緒に)を簡単にインストールできます:

  1. 必要なインストーラをダウンロードします:
    1. https://www.python.org/downloads/ を開きます
    2. Download Python 3.6.4 ボタンを選択します(正確なマイナーバージョン番号は異なる場合があります)。
  2. Finderを使用してファイルを探し、パッケージファイルをダブルクリックします。インストールの後、プロンプトが表示されます。

以下に示すように、Python 3を確認することで、正常にインストールされたことを確認できます:

python3 -V
 Python 3.6.4

同様にpip3がインストールされていることを確認するには、利用可能なパッケージを一覧表示します:

pip3 list

Windows 10

WindowsにはデフォルトでPythonは含まれていませんが、python.orgからpip3ツールと一緒に簡単にインストールできます:

  1. 必要なインストーラをダウンロードします:
    1. https://www.python.org/downloads/ を開きます
    2. Download Python 3.6.4 ボタンを選択します(正確なマイナーバージョン番号は異なる場合があります)。
  2. ダウンロードしたファイルをダブルクリックし、インストールのプロンプトに従ってPythonをインストールします。

Python 3がインストールされたことを確認するには、コマンドプロンプトに次のテキストを入力します:

py -3 -V 
 Python 3.6.4

Windowsインストーラには、デフォルトでpip3(Pythonパッケージマネージャ)が組み込まれています。次に示すようにインストールされたパッケージを一覧表示できます:

pip3 list

ノート: インストーラは、上記のコマンドが動作するために必要なものすべてをセットアップする必要があります。Pythonが見つからないというメッセージが表示された場合は、システムパスに追加する必要があります。

Python仮想環境内でのDjangoの使用

仮想環境を作成するために使用するライブラリは、 virtualenvwrapper (LinuxとmacOS X)とvirtualenvwrapper-win(Windows)です。これらはどちらもvirtualenvツールを使用します。ラッパーツールは、すべてのプラットフォーム上のインターフェイスを管理するための一貫したインターフェイスを作成します。

仮想環境ソフトウェアのインストール

Ubuntu仮想環境のセットアップ

Pythonとpipをインストールした後、virtualenvwrapper(virtualenvを含む)をインストールできます。公式インストールガイドはこちら、または下記の手順に従ってください。

pip3を使用してツールをインストールします:

sudo pip3 install virtualenvwrapper

次に、シェルのスタートアップファイルの最後に次の行を追加します(これはホームディレクトリ内の .bashrc という名前の隠しファイルです)。これらは、仮想環境の存在場所、開発プロジェクトディレクトリの場所、およびこのパッケージと共にインストールされるスクリプトの場所を設定します:

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS=' -p /usr/bin/python3 '
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

ノート: VIRTUALENVWRAPPER_PYTHONおよびVIRTUALENVWRAPPER_VIRTUALENV_ARGS変数は、Python3の通常のインストール場所を指し、source /usr/local/bin/virtualenvwrapper.shvirtualenvwrapper.sh スクリプトの通常の場所を指します。テスト時にvirtualenvが動作しない場合は、Pythonとスクリプトが予想される場所にあることを確認してから、起動ファイルを適切に変更してください。

あなたのシステムでの正しい場所は、which virtualenvwrapper.shwhich python3というコマンドを使って見つけることができます。

次に、ターミナルで次のコマンドを実行してスタートアップファイルをリロードします:

source ~/.bashrc

この時点で、以下に示すように一連のスクリプトが実行されているはずです:

virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/premkproject
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/postmkproject
...
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/preactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/postactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/get_env_details

これで、mkvirtualenvコマンドを使用して新しい仮想環境を作成できます。

macOS X仮想環境のセットアップ

macOS Xでのvirtualenvwrapperのセットアップは、Ubuntuの場合とほぼ同じです(オフィシャルインストールガイドまたはそれ以下の指示に従います)。

次に示すようにpipを使用してvirtualenvwrapper(およびvirtualenvをバンドル)をインストールします。

sudo pip3 install virtualenvwrapper

次に、シェルスタートアップファイルの最後に次の行を追加します。

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

ノートVIRTUALENVWRAPPER_PYTHON変数はPython3の通常のインストール場所を指し、source /usr/local/bin/virtualenvwrapper.shvirtualenvwrapper.shスクリプトの通常の場所を指しています。テスト時にvirtualenvが動作しない場合は、Pythonとスクリプトが予想される場所にあることを確認してから、起動ファイルを適切に変更してください。

 

たとえば、macOSでの1つのインストールテストでは、スタートアップファイルに次の行が必要になりました:

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.7/bin/python3
export PROJECT_HOME=$HOME/Devel
source /Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh

 

あなたのシステムでの正しい場所は、which virtualenvwrapper.shwhich python3というコマンドを使って見つけることができます。


これらはUbuntuの場合と同じ行ですが、スタートアップファイルはホームディレクトリ内で .bash_profile という別の名前の隠しファイルです。

ノート: 編集する.bash-profileがFinderで見つからない場合は、ターミナルでnanoを使用して開くこともできます。

コマンドは次のようになります:

cd ~  # Navigate to my home directory
ls -la #List the content of the directory. YOu should see .bash_profile
nano .bash_profile # Open the file in the nano text editor, within the terminal
# Scroll to the end of the file, and copy in the lines above
# Use Ctrl+X to exit nano, Choose Y to save the file.

 

ターミナルで次の呼び出しを行うことによって、スタートアップファイルをリロードします:

source ~/.bash_profile

この時点で、たくさんのスクリプトが実行されているのを見ることができます(Ubuntuのインストールと同じスクリプト)。mkvirtualenvコマンドを使用して新しい仮想環境を作成できるようになりました。

Windows 10仮想環境のセットアップ

virtualenvwrapper-winのインストールは、仮想環境情報を保存する場所(デフォルト値があります)を設定する必要がないため、virtualenvwrapperを設定するより簡単です。コマンドプロンプトで次のコマンドを実行するだけです:

pip3 install virtualenvwrapper-win

これで、mkvirtualenvコマンドで新しい仮想環境を作成できます。

仮想環境の作成

virtualenvwrapperまたはvirtualenvwrapper-winをインストールすると、仮想環境での作業はすべてのプラットフォームでほとんど同様になります。

mkvirtualenv コマンドを使用して新しい仮想環境を作成できます。このコマンドが実行されると、セットアップされる環境が表示されます(表示されるのはプラットフォーム固有のものです)。コマンドが完了すると、新しい仮想環境がアクティブになります。これは、プロンプトの開始が環境の名前(下に示すように)になるので、確認できます。

$ mkvirtualenv my_django_environment

Running virtualenv with interpreter /usr/bin/python3
...
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/t_env7/bin/get_env_details
(my_django_environment) ubuntu@ubuntu:~$

これで、Djangoをインストールして開発を開始できる仮想環境の中に入りました。

ノート: これ以降、この記事(と実際にはモジュール)では、上でセットアップしたようなPython仮想環境内でコマンドが実行されると仮定してください。

仮想環境の使用

他にも知っておくべき便利なコマンドがいくつかあります(ツールのドキュメントには多くのものがありますが、これらはいつも使用するコマンドです):

  • deactivate — 現在のPython仮想環境を終了します
  • workon — 利用可能な仮想環境を一覧表示します
  • workon name_of_environment — 指定したPython仮想環境を有効にします
  • rmvirtualenv name_of_environment — 指定された環境を削除します

Djangoのインストール

仮想環境を作成し、workonでその環境に入ってから、pip3を使用してDjangoをインストールできます。

pip3 install django

Djangoがインストールされていることをテストするには、次のコマンドを実行します(PythonがDjangoモジュールを見つけることができます):

# Linux/macOS X
python3 -m django --version
 2.0

# Windows
py -3 -m django --version 
 2.0

ノート: Windowsではpy -3コマンドをプレフィックスにしてPython 3スクリプトを起動し、Linux/macOS Xでは python3を実行します。

重要: このモジュールの残りの部分は、 Python 3 (python3) を呼び出すためにLinuxコマンドを使用します。Windowsで作業している場合は、単にこの接頭辞をpy -3に置き換えてください。

インストールのテスト

上記のテストはうまくいきますが、それほど楽しいことではありません。より面白いテストは、スケルトンプロジェクトを作成し、それが動作することを確認することです。これを行うには、コマンドプロンプト/ターミナルでDjangoアプリケーションを保存する場所に移動します。テストサイト用のフォルダを作成し、そのサイトに移動します。

mkdir django_test
cd django_test

次に示すように、django-adminツールを使用して、 "mytestsite"という新しいスケルトンサイトを作成します。サイトを作成したら、manage.pyというプロジェクト管理用のメインスクリプトがあるフォルダに移動します。

django-admin startproject mytestsite
cd mytestsite

次に示すようにmanage.pyrunserverコマンドを使用して、このフォルダ内から開発用Webサーバーを実行できます。

$ python3 manage.py runserver 
Performing system checks...

System check identified no issues (0 silenced).

You have 14 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

December 29, 2017 - 03:03:47
Django version 2.0, using settings 'mytestsite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

ノート: 上記のコマンドは、Linux/macOS Xコマンドを示しています。この時点では、 "14 unapplied migration(s)" という警告は無視できます!

サーバーが稼働したら、ローカルWebブラウザで http://127.0.0.1:8000/ というURLに移動して、サイトを表示できます。次のようなサイトが表示されます:

Django Skeleton App Homepage

要約

Django開発環境をあなたのコンピュータ上で稼働できるようになりました。

テストのセクションでは、django-admin startprojectを使用して新しいDjango Webサイトを作成する方法と、開発用Webサーバー(python3 manage.py runserver)を使用してブラウザで実行する方法についても簡単に説明しました。次の記事では、このプロセスを拡張して、シンプルで完全なWebアプリケーションを構築します。

参考文献

このモジュール内

 

ドキュメントのタグと貢献者

このページの貢献者: tokibito
最終更新者: tokibito,