Ubuntu18.04にDjangoWebFrameworkをインストールする方法

前書き ##

[ Django](https://www.djangoproject.com/)は、動的なWebサイトおよびアプリケーションを開発するためのフル機能のPythonWebフレームワークです。 Djangoを使用すると、Python Webアプリケーションをすばやく作成し、フレームワークに依存して重い作業を完了することができます。

このチュートリアルでは、Ubuntu18.04サーバーでDjangoを起動して実行します。インストールが完了したら、サイトのベースとして新しいプロジェクトを開始します。

このチュートリアルを完了するには、 sudoコマンドを使用できる非rootアカウントを持つUbuntu ** server が必要であり、ファイアウォールがオンになっています。サーバーをお持ちでない方は[こちら](https://cloud.tencent.com/product/cvm?from=10680)から購入できますが、個人的には無料**のTencent Cloud [Developer Lab](https://cloud.tencent.com/developer/labs?from=10680)を使って実験し、[サーバーを購入]( https://cloud.tencent.com/product/cvm?from=10680)。

違う方法 ##

ニーズと開発環境の構成方法に応じて、Djangoをインストールする方法は複数あります。それらにはさまざまな利点があり、1つの方法が他の方法よりも特定の状況に適している場合があります。

いくつかの異なる方法が含まれます:

準備 ##

開始する前に、Ubuntu18.04サーバーでsudo権限を持つ非rootユーザーが必要です。

インストールパッケージからのグローバルインストール

Ubuntuリポジトリを使用してDjangoをインストールする場合、プロセスは非常に簡単です。

まず、 aptコマンドを使用してローカルパッケージインデックスを更新します。

sudo apt update

次に、インストールされているPythonのバージョンを確認します。デフォルトでは、18.04にはPython 3.6が付属しています。次のように入力して、確認できます。

python3 -V

次のような出力が表示されます。

Python 3.6.5

次に、Djangoをインストールします。

sudo apt install python3-django

次のように入力して、インストールが成功したかどうかをテストできます。

django-admin --version
1.11.11

これは、ソフトウェアが正常にインストールされたことを意味します。

pipを使用して仮想環境にインストールします

システムにDjangoをインストールする最も柔軟な方法は、仮想環境です。標準のPython3ライブラリの一部である venvモジュールを使用して作成する仮想環境にDjangoをインストールする方法を示します。このツールを使用すると、システムの他の部分に影響を与えることなく、仮想Python環境を作成し、Pythonパッケージをインストールできます。したがって、他のプロジェクトの要件と競合するかどうかに関係なく、各プロジェクトに基づいてPythonパッケージを選択できます。

ローカルパッケージインデックスを更新することから始めましょう:

sudo apt update

インストールされているPythonのバージョンを確認します。

python3 -V
Python 3.6.5

次に、Ubuntuリポジトリから pipをインストールしましょう。

sudo apt install python3-pip

pipがインストールされると、それを使用して venvパッケージをインストールできます。

sudo apt install python3-venv

これで、新しいプロジェクトを開始するたびに、そのプロジェクトの仮想環境を作成できます。まず、新しいプロジェクトディレクトリを作成して移動します。

mkdir ~/newproject
cd ~/newproject

次に、Pythonバージョンと互換性のある pythonコマンドを使用して、プロジェクトディレクトリに仮想環境を作成します。仮想環境を my_envと呼びますが、わかりやすい名前を付ける必要があります。

python3.6-m venv my_env

これにより、スタンドアロンバージョンのPythonと pipがプロジェクトディレクトリのスタンドアロンディレクトリ構造にインストールされます。インストールされるパッケージのファイル階層を保持するディレクトリが、選択した名前で作成されます。

パッケージを隔離された環境にインストールするには、次のコマンドを入力してパッケージをアクティブ化する必要があります。

source my_env/bin/activate

プロンプトは、仮想環境にいることを反映するように変更されます。 (my_env)username @ hostname:〜/ newproject $のように見えます。

新しい環境では、 pipを使用してDjangoをインストールできます。 Pythonのバージョンに関係なく、 pipは仮想環境で pipを呼び出す必要があります。また、ローカルにインストールしているため、「sudo」を使用する必要がないことにも注意してください。

pip install django

次のように入力して、インストールを確認できます。

django-admin --version
2.1

お使いのバージョンは、ここに表示されているバージョンと異なる場合があることに注意してください。

仮想環境を離れるには、システムのどこからでもコマンド deactivateを発行する必要があります。

deactivate

プロンプトは従来の表示に戻るはずです。プロジェクトで再度作業する場合は、プロジェクトディレクトリに戻り、以下をアクティブ化して、仮想環境を再アクティブ化してください。

cd ~/newproject
source my_env/bin/activate

Gitを使用して開発バージョンをインストールします

Djangoの開発バージョンが必要な場合は、GitリポジトリからDjangoをダウンロードしてインストールできます。仮想環境からこれを実行しましょう。

まず、ローカルパッケージインデックスを更新しましょう。

sudo apt update

インストールされているPythonのバージョンを確認します。

python3 -V
Python 3.6.5

次に、 pipが公式リポジトリからインストールされます。

sudo apt install python3-pip

venvパッケージをインストールして、仮想環境を作成します。

sudo apt install python3-venv

次のステップは、Djangoリポジトリのクローンを作成することです。リリース間で、このリポジトリには、おそらく安定性を犠牲にして、より新しい機能とバグ修正が含まれる予定です。次のコマンドを入力して、リポジトリをホームディレクトリの 〜/ django-devディレクトリに複製できます。

git clone git://github.com/django/django ~/django-dev

このディレクトリに切り替えます。

cd ~/django-dev

インストールされているPythonバージョンと互換性のある pythonコマンドを使用して仮想環境を作成します。

python3.6-m venv my_env

それをアクティブにします:

source my_env/bin/activate

次に、インストールリポジトリ pipを使用できます。 -eオプションは、バージョンコントロールからインストールするときに必要な「編集可能」モードでインストールされます。

pip install -e ~/django-dev

次のように入力すると、インストールが成功したことを確認できます。

django-admin --version
2.2. dev20180802155335

同様に、表示されるバージョンは、ここに表示されているバージョンと一致しない場合があります。

これで、仮想環境に最新バージョンのDjangoがインストールされました。

サンプルプロジェクトを作成する

Djangoをインストールしたら、プロジェクトのビルドを開始できます。仮想環境を使用して、開発サーバーでプロジェクトを作成およびテストする方法について説明します。

まず、プロジェクトのディレクトリを作成し、変更を加えます。

mkdir ~/django-test
cd ~/django-test

次に、仮想環境を作成します。

python3.6-m venv my_env

アクティベーション環境:

source my_env/bin/activate

Djangoをインストールします。

pip install django

プロジェクトをビルドするには、 startprojectコマンドで django-adminを使用できます。プロジェクトに「djangoproject」という名前を付けましたが、別の名前に置き換えることができます。 startprojectは、現在の作業ディレクトリに次のディレクトリを作成します。

ただし、ネストされたディレクトリが多すぎるのを避けるために、管理スクリプトと内部ディレクトリを* current *ディレクトリに配置するようにDjangoに指示しましょう(エンドポイントに注意してください)。

django-admin startproject djangoproject .

データベースを移行するには(この例ではSQLiteがデフォルトで使用されます)、 manage.py migrateコマンドを使用しましょう。移行により、Djangoモデルに加えた変更がデータベーススキーマに適用されます。

データベースを移行するには、次のように入力します。

python manage.py migrate

次の出力が表示されます。

OutputOperations to perform:
 Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
 Applying contenttypes.0001_initial... OK
 Applying auth.0001_initial... OK
 Applying admin.0001_initial... OK
 Applying admin.0002_logentry_remove_auto_add... OK
 Applying admin.0003_logentry_add_action_flag_choices... OK
 Applying contenttypes.0002_remove_content_type_name... OK
 Applying auth.0002_alter_permission_name_max_length... OK
 Applying auth.0003_alter_user_email_max_length... OK
 Applying auth.0004_alter_user_username_opts... OK
 Applying auth.0005_alter_user_last_login_null... OK
 Applying auth.0006_require_contenttypes_0002... OK
 Applying auth.0007_alter_validators_add_error_messages... OK
 Applying auth.0008_alter_user_username_max_length... OK
 Applying auth.0009_alter_user_last_name_max_length... OK
 Applying sessions.0001_initial... OK

最後に、Djano管理インターフェイスを使用できるように管理ユーザーを作成しましょう。 createsuperuserコマンドでこれを行いましょう:

python manage.py createsuperuser

ユーザー名、メールアドレス、パスワードの入力を求められます。

Django設定でALLOWED_HOSTSを変更します

アプリケーションを正常にテストするには、Django設定でディレクティブを変更する必要があります。

次のコマンドを入力して、設定ファイルを開きます。

nano ~/django-test/djangoproject/settings.py

内部で、 ALLOWED_HOSTS命令を見つけます。これは、Djangoインスタンスへの接続に使用できるアドレスまたはドメイン名のホワイトリストを定義します。このリストにない** host **ヘッダーを持つ着信要求は、例外を発生させます。 Djangoでは、特定の種類のセキュリティホールを防ぐために設定する必要があります。

角括弧内に、Djangoサーバーに関連付けられているIPアドレスまたはドメイン名をリストします。各項目は、コンマで区切られた個々のエントリを使用して、引用符でリストする必要があります。ドメイン全体とサブドメインのリクエストが必要な場合は、エントリの先頭にピリオドを追加してください。

...
ALLOWED_HOSTS =['your_server_ip_or_domain','your_second_ip_or_domain',...]

終了したら、ファイルを保存してエディターを終了します。

テスト開発サーバー

ユーザーができたら、Django開発サーバーを起動して、新しいDjangoプロジェクトがどのように見えるかを確認できます。開発目的でのみ使用してください。デプロイする準備ができたら、Djangoのデプロイメントチュートリアルに注意深く従ってください。

サーバーの開発を試みる前に、必ずファイアウォールの対応するポートを開いてください。サーバーの初期設定チュートリアルに従ってUFWを使用する場合は、次のように入力してポート 8000を開くことができます。

sudo ufw allow 8000

開発サーバーを起動します。

python manage.py runserver your_server_ip:8000

:8000で終わるサーバーのIPアドレスにアクセスしてから、Webブラウザーにアクセスします。

http://your_server_ip:8000

次のようなものが表示されます。

管理インターフェイスにアクセスするには、URLの末尾に / admin /を追加します。

http://your_server_ip:8000/admin/

これにより、ログイン画面が表示されます。

作成した管理者のユーザー名とパスワードを入力すると、サイトのメインの管理者セクションにアクセスできるようになります。

デフォルトのサイトを表示した後、ターミナルで「CTRL-C」と入力して開発サーバーを停止できます。

作成するDjangoプロジェクトは、より完全なサイトを設計するための構造的基盤を提供します。アプリケーションとカスタムサイトを構築する方法の詳細については、Djangoのドキュメントを確認してください。

結論として ##

これで、Ubuntu 18.04サーバーにDjangoをインストールして、強力なWebアプリケーションを作成するために必要な主要なツールを提供する必要があります。また、新しいプロジェクトを開始して開発者サーバーを開始する方法も知っておく必要があります。 Djangoのような完全なWebフレームワークを利用すると、開発を迅速化でき、アプリケーションの固有の側面のみに集中できます。

Django Web Framework関連のチュートリアルのインストールの詳細については、[Tencent Cloud + Community](https://cloud.tencent.com/developer?from=10680)にアクセスして詳細を確認してください。


参照:「Ubuntu18.04にDjangoWebフレームワークをインストールする方法」

Recommended Posts

Ubuntu18.04にDjangoWebFrameworkをインストールする方法
Ubuntu18.04にOperaWebブラウザをインストールする方法
Ubuntu20.04にRubyをインストールする方法
Ubuntu20.04にMemcachedをインストールする方法
Ubuntu20.04にJavaをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にVirtualBoxをインストールする方法
Ubuntu20.04にElasticsearchをインストールする方法
Ubuntu20.04にNginxをインストールする方法
Ubuntu20.04にApacheをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu16.04にNode.jsをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にVagrantをインストールする方法
Ubuntu16.04にPostgreSQLをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu18.04にMemcachedをインストールする方法
Ubuntu16.04にJenkinsをインストールする方法
Ubuntu14.04にMemSQLをインストールする方法
Ubuntu16.04にMongoDBをインストールする方法
Ubuntu14.04にMailpileをインストールする方法
Ubuntu20.04にSkypeをインストールする方法
Ubuntu20.04にJenkinsをインストールする方法
Ubuntu18.04にPython3.8をインストールする方法
Ubuntu18.04にKVMをインストールする方法
Ubuntu20.04にKVMをインストールする方法
ubuntu14.04にopencv3.0.0をインストールする方法
Ubuntu20.04にAnacondaをインストールする方法
Ubuntu18.04にJenkinsをインストールする方法
Ubuntu20.04にApacheをインストールする方法
Ubuntu20.04にRをインストールする方法
Ubuntu16.04にMoodleをインストールする方法
Ubuntu14.04にSolr5.2.1をインストールする方法
Ubuntu16.04にTeamviewerをインストールする方法
Ubuntu20.04にMariaDBをインストールする方法
Ubuntu20.04にNginxをインストールする方法
Ubuntu20.04にMonoをインストールする方法
Ubuntu20.04にGoをインストールする方法
Ubuntu20.04にZoomをインストールする方法
Ubuntu16.04にNginxをインストールする方法
Ubuntu20.04にOpenCVをインストールする方法
Ubuntu20.04にSpotifyをインストールする方法
Ubuntu18.04にPostmanをインストールする方法
Ubuntu16.04にGo1.6をインストールする方法
Ubuntu18.04にGoをインストールする方法
Ubuntu14.04にMySQLをインストールする方法
Ubuntu20.04にPostgreSQLをインストールする方法
Ubuntu18.04にVLCをインストールする方法
Ubuntu20.04にTeamViewerをインストールする方法
Ubuntu20.04にWebminをインストールする方法
Ubuntu18.04にDockerComposeをインストールする方法
RaspberryPiにUbuntuをインストールする方法
Ubuntu14.04にBaculaServerをインストールする方法
UbuntuにDjangoをインストールします
Ubuntu 18.04(linux)にMySQLをインストールする方法
Raspberry Pi4にUbuntu19.10をインストールする方法
Ubuntu18.04にApacheKafkaをインストールする方法
Ubuntu20.04にApacheMavenをインストールする方法
Ubuntu16.04にApacheTomcat8をインストールする方法
Ubuntu20.04 ubuntu / focal64にPython2をインストールする方法
Ubuntu18.04にGCCコンパイラをインストールする方法