前書き
Djangoは、Python Webアプリケーションを作成するための強力なフレームワークです。 Djangoのようなフル機能のフレームワークを使用すると、共通の構造コードを心配せずに、アプリケーションとサイトをより速く起動して実行できます。 フレームワークを使用すると、アプリケーションの固有の部分に集中し、ツールで手間をかけることができます。
このガイドでは、CentOS 7サーバーにDjangoをインストールするさまざまな方法を紹介します。 インストール後、サイトのベースとして使用するプロジェクトを開始する方法を簡単に説明します。
EPELリポジトリをインストールする
以下で説明するすべてのインストール方法は、CentOSおよびRedHatのようなディストリビューションのEPELリポジトリに依存しています。 EPELリポジトリには、コアディストリビューションの一部として維持されていない余分なパッケージが含まれていますが、かなりまばらです。
EPELリポジトリへのアクセスの構成は、これまでよりもはるかに簡単になりました。 サーバーで、次のように入力してEPELリポジトリを使用するように `+ yum +`を設定できます。
sudo yum install epel-release
これで、EPELリポジトリ内で維持されているすべてのアプリケーションにアクセスできるようになります。
異なる方法
ニーズと開発環境の設定方法に応じて、Djangoをインストールできるさまざまな方法があります。 これらにはさまざまな利点があり、1つの方法が他の方法よりも特定の状況に適している場合があります。
さまざまな方法の一部を以下に示します。
-
パッケージからのグローバルインストール:EPELリポジトリには、従来の `+ yum +`パッケージマネージャーで簡単にインストールできるDjangoパッケージが含まれています。 これは非常に簡単ですが、他のいくつかの方法ほど柔軟ではありません。 また、リポジトリに含まれるバージョンは、プロジェクトから入手できる公式バージョンよりも遅れることがあります。
-
* pipによるグローバルインストール*: `+ pip `ツールはPythonパッケージのパッケージマネージャーです。 ` pip +`をインストールすると、すべてのユーザーが使用できるようにシステムレベルでDjangoを簡単にインストールできます。 これには常に最新の安定版リリースが含まれている必要があります。 それでも、グローバルインストールは本質的に柔軟性が低くなります。
-
* Virtualenvのpipを介してインストールする*:Pythonの `+ virtualenv +`パッケージを使用すると、さまざまなプロジェクト用の自己完結型の環境を作成できます。 この技術を使用すると、Djangoをプロジェクトディレクトリにインストールできます。システムに影響を与えることはありません。 これにより、プロジェクトごとのカスタマイズとパッケージを簡単に提供できます。 仮想環境は、グローバルにアクセス可能なインストールと比較して、若干の精神的およびプロセスのオーバーヘッドを追加しますが、最も柔軟性があります。
-
* gitによる開発バージョンのインストール*:安定版リリースではなく最新の開発バージョンをインストールする場合は、 `+ git +`リポジトリからコードを取得する必要があります。 これは、最新の機能/修正を取得するために必要であり、グローバルまたはローカルで実行できます。 ただし、開発バージョンには同じ安定性の保証はありません。
上記の注意事項と品質を念頭に置いて、以下の指示からニーズに最適なインストール方法を選択してください。
パッケージからのグローバルインストール
EPELリポジトリを使用してDjangoをインストールする場合、プロセスは非常に簡単です。
単に `+ yum +`パッケージマネージャーを使用して、関連するパッケージをダウンロードしてインストールできます。
sudo yum install python-django
次のように入力して、インストールが成功したことをテストできます。
django-admin --version
1.6.10
これは、ソフトウェアが正常にインストールされたことを意味します。 また、Djangoバージョンが最新の安定版ではないことに気付くかもしれません。 ソフトウェアの使用方法について少し学ぶには、https://www.digitalocean.com/community/tutorials/how-to-install-the-django-web-framework-on-centos-7#creatingをご覧ください。 -a-sample-project [サンプルプロジェクトの作成方法]。
pipによるグローバルインストール
Djangoの最新バージョンをグローバルにインストールする場合、Pythonパッケージマネージャーである `+ pip `を使用することをお勧めします。 まず、 ` pip +`パッケージマネージャーをインストールする必要があります。
次のように入力して、EPELリポジトリから「+ pip +」をインストールできます。
sudo yum install python-pip
`+ pip +`を取得したら、次のように入力してDjangoを簡単にグローバルにインストールできます。
sudo pip install django
次のように入力して、インストールが成功したことを確認できます。
django-admin --version
1.7.5
ご覧のとおり、 `+ pip +`を介して利用できるバージョンは、EPELリポジトリのものよりも最新です(おそらく、上記のものとは異なるでしょう)。
Virtualenvでpipを介してインストールする
おそらく、システムにDjangoをインストールする最も柔軟な方法は、 `+ virtualenv +`ツールを使用することです。 このツールを使用すると、システムの他の部分に影響を与えることなく、必要なPythonパッケージをインストールできる仮想Python環境を作成できます。 これにより、他のプロジェクトの要件との競合に関係なく、プロジェクトごとにPythonパッケージを選択できます。
EPELリポジトリから `+ pip +`をインストールすることから始めます。
sudo yum install python-pip
`+ pip `がインストールされたら、それを使用して ` virtualenv +`パッケージをインストールできます:
sudo pip install virtualenv
これで、新しいプロジェクトを開始するたびに、そのプロジェクト用の仮想環境を作成できます。 新しいプロジェクトディレクトリを作成して移動することから始めます。
mkdir ~/
cd ~/
次のように入力して、プロジェクトディレクトリ内に仮想環境を作成します。
virtualenv
これにより、Pythonのスタンドアロンバージョンと `+ pip `がプロジェクトディレクトリ内の分離されたディレクトリ構造にインストールされます。 仮想環境を「+」と呼ぶことにしましたが、わかりやすい名前を付ける必要があります。 選択した名前のディレクトリが作成され、パッケージがインストールされるファイル階層が保持されます。
分離環境にパッケージをインストールするには、次を入力してアクティブ化する必要があります。
source /bin/activate
仮想環境にいることを反映して、プロンプトが変更されるはずです。 `+()username @ hostname:〜/ newproject $ +`のようになります。
新しい環境では、「+ pip 」を使用してDjangoをインストールできます。 ローカルにインストールしているので、 ` sudo +`を使用する必要はないことに注意してください:
pip install django
次のように入力して、インストールを確認できます。
django-admin --version
1.7.5
仮想環境を離れるには、システムのどこからでも `+ deactivate +`コマンドを発行する必要があります:
deactivate
プロンプトは従来の表示に戻るはずです。 プロジェクトで再度作業する場合は、プロジェクトディレクトリに戻ってアクティブ化することにより、仮想環境を再度アクティブ化する必要があります。
cd ~/
source /bin/activate
gitによる開発バージョンのインストール
Djangoの開発バージョンが必要な場合は、 `+ git +`リポジトリからDjangoをダウンロードしてインストールする必要があります。
そのためには、 + yum +`でシステムに `+ git +`をインストールする必要があります。 また、 `+ pip +
Pythonパッケージマネージャーもインストールします。 これを使用して、ダウンロード後のDjangoのインストールを処理します。
sudo yum install git python-pip
`+ git `を取得したら、Djangoリポジトリを複製できます。 リリース間で、このリポジトリには、安定性を犠牲にして、より多くの最新機能とバグ修正が含まれます。 次のように入力して、ホームディレクトリ内の ` django-dev +`というディレクトリにリポジトリを複製できます。
git clone git://github.com/django/django ~/django-dev
リポジトリのクローンを作成したら、 `+ pip `を使用してインストールできます。 ` -e +`オプションを使用して、「編集可能」モードでインストールします。これは、バージョン管理からインストールするときに必要です。
sudo pip install -e ~/django-dev
次のように入力して、インストールが成功したことを確認できます。
django-admin --version
1.9.dev20150305200340
Djangoの開発バージョンを単一の環境にインストールする場合は、この戦略を上記の `+ virtualenv +`の使用と組み合わせることもできます。
サンプルプロジェクトの作成
Djangoがインストールされたので、プロジェクトの開始方法を簡単に説明できます。
`+ django-admin`コマンドを使用してプロジェクトを作成できます:
django-admin startproject
cd
これにより、現在のディレクトリ内に「」というディレクトリが作成されます。 この中で、管理スクリプトが作成され、実際のコードで「」という別のディレクトリが作成されます。
注: `+ virtualenv +`コマンドで使用するために作成したプロジェクトディレクトリに既にいた場合、これを入力することにより、追加のレイヤーなしで管理スクリプトと内部ディレクトリを現在のディレクトリに配置するようDjangoに指示できます終了ドット):
django-admin startproject .
Djangoの最新バージョンでデータベース(これはデフォルトでSQLiteを使用)をブートストラップするには、次のように入力します。
python manage.py migrate
「+ migrate +」コマンドが機能しない場合は、古いバージョンのDjangoを使用している可能性があります(おそらくインストールします。 代わりに、次を入力できます。
python manage.py syncdb
このプロセスの一環として、管理ユーザーを作成するように求められます。 ユーザーのユーザー名、メールアドレス、パスワードを選択します。
上記の「+ migrate +」コマンドを使用した場合は、管理ユーザーを手動で作成する必要があります。 次のように入力して、管理ユーザーを作成できます。
python manage.py createsuperuser
ユーザーのユーザー名、メールアドレス、パスワードの入力を求められます。
ユーザーを取得したら、Django開発サーバーを起動して、新しいDjangoプロジェクトがどのように見えるかを確認できます。 これは開発目的でのみ使用してください。 Run:
python manage.py runserver 0.0.0.0:8000
WebブラウザーでサーバーのIPアドレスに続けて「:8000」にアクセスします
:8000
次のようなものが表示されるはずです。
image:https://assets.digitalocean.com/articles/django_centos7/django_default.png [Django public page]
次に、URLの末尾に「+ / admin +」を追加して、管理者ログインページに移動します。
:8000/admin
画像:https://assets.digitalocean.com/articles/django_centos7/django_admin_login.png [Django管理者ログイン]
作成した管理者のユーザー名とパスワードを入力すると、サイトの管理者セクションに移動する必要があります。
image:https://assets.digitalocean.com/articles/django_centos7/django_admin_page.png [Django管理ページ]
デフォルトのサイトを調べ終わったら、ターミナルで「+ CTRL-C +」と入力して開発サーバーを停止できます。
作成したDjangoプロジェクトは、より完全なサイトを設計するための構造的基盤を提供します。 アプリケーションの構築方法とサイトのカスタマイズ方法の詳細については、Djangoのドキュメントをご覧ください。
結論
これで、CentOS 7サーバーにDjangoがインストールされ、強力なWebアプリケーションを作成するために必要な主要ツールが提供されます。 また、新しいプロジェクトを開始し、開発者サーバーを起動する方法を知っている必要があります。 Djangoのような完全なWebフレームワークを活用すると、開発を高速化でき、アプリケーションの固有の側面のみに集中できます。