EC2にnginxとuwsgiとdjango+route53でデプロイ①

DjangoのプロジェクトをEC2にデプロイする手順をご説明いたします。

目次

環境

デプロイするDjangoのプロジェクト構成は以下の前提です。

.env/
e-commerce/
    ┣ .gitignore
    ┣  db.sqlite3
    ┣  manage.py
    ┣  README.md
    ┣  requirements.txt
    ┣  core/
    │  ┣  admin.py
    │  ┣  apps.py
    │  ┣  models.py
    │  ┣  tests.py
    │  ┣  urls.py
    │  ┣  views.py
    │  ┣  __init__.py          
    ┣  djecommerce
    │  ┣  .settings.py.swp
    │  ┣  settings.py
    │  ┣  urls.py
    │  ┣  views.py
    │  ┣  wsgi.py
    │  ┣  __init__.py
    ┣templates/
    │  ┣  home.html

環境

  • Windows10
  • EC2 Amazon Linux
  • python 3.7

環境構築後の全体イメージ
環境構成図

Amazon Linux環境構築

EC2インスタンスの作成

①EC2のコンソールにログインします。
ec2

②インスタンスの作成をクリック。

AMIは無料枠を使用するため、Amazon Linux2 なるべく新しいのがおすすめ
インスタンスタイプ(インスタンスのスペック) t2.micro

③インスタンスの設定はVPC環境をデフォルトでもいいのですが、サブネットはap-northeast-1aを選択

必要に応じてストレージの増強やタグをつけて管理をしやすくしてください。

④セキュリティグループはHTTPタイプを選択し、公開するためにソースは任意のIPアドレスを選択。


ここでキーペアの .pemファイルのようなものを作成するために、そちらは大切に保管してください。

Elastic IPでIPアドレスを固定する。

①EC2の左側のコンソールバーの中のElastic IPをクリック

Elastic IPアドレスの割り当てをクリック
AmazonのIPv4アドレスプールをクリック
アクションバーより、インスタンスの関連付けを行う。
これでIPアドレスを固定完了。

例)発行したものは11.222.33.444とする。

Route53で名前解決する。

今回はドメインの購入にxserverを使用。

適当にsamle.comを購入したとしましょう。

①コンソールにログインしRoute53のページにいく。

②ホストゾーンの作成をクリックし、ドメイン名をsample.comとする。
公開するためにタイプはパブリックを選択。

③ホストゾーンの作成をクリックし、ドメイン名をsample.comとする。
公開するためにタイプはパブリックを選択。

ホストゾーンを選択したらレコードの作成をクリック。

④シンプルルーティングをクリック。

シンプルなレコードを作成をクリックし、
ec.sample.com
とする。

値/トラフィックのルーティング先を「レコードタイプに応じたIPアドレスまたは別の値」に設定
中身を先ほど設定したElastic IPアドレスに変更する。
11.222.33.444

次に、xserverよりNX権限の設定を行う。
④xserverのログインページに行き、ドメインパネルを開く。

ネームサーバー情報をクリックし、設定変更を行う。

⑤ネームサーバーの情報を「その他の情報に変更する」とし、Route53のコンソール画面のネームサーバーに変更する。

以上でサーバーの構築はとりあえず完了。


次の記事でデプロイしていきます。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

数学科出身のSoftware Engineer
情報通信が好きなのでブログを活用して発信しています。

コメント

コメントする

目次
閉じる