AWSの話題を中心に、日々の業務やプログラミングの徒然を綴るエンジニアブログです。

HANDS LAB

HANDS LAB ENGINEERS BLOG

ハンズラボエンジニアブログ

[Elastic Beanstalk入門] Djangoアプリケーションのデプロイ その①

Pocket

Pocket

戦闘員吉田です。
ebの使い方入門ということで、公式チュートリアルよりDjangoアプリケーションのデプロイをやってみたいと思います。

Elastic Beanstalk への Django アプリケーションのデプロイ

前提条件

  • pipが使える
  • pythonは2.7/3.4を使ってる
  • virtualenvを導入済み
  • awsebcliコマンドが使える
  • ssh使える
  • クライアントはMacの使用を想定しています
  • ebコマンドが使える

準備:pipの導入

コマンド

確認

結果

こんな感じでバージョン情報が出力されれば導入完了です。

準備:virtualenvの導入

コマンド

確認

結果

準備:awsebcliコマンドの導入

Macに Homebrew を使用して導入します

コマンド

確認

結果

導入準備が完了しました。
実際に作業を進めていきます。

Pythonの仮想環境を設定する

変数

コマンド

結果

仮想環境の実行

コマンド

コマンドプロンプトの先頭に()で環境名がついていればOK

Djangoのインストール

確認

結果

コマンド

確認

結果

上記結果を得られればDjangoは正しくインストールされています

Django プロジェクトの作成(クライアント環境に作成する)

まず、クライアント側でDjangoのプロジェクトを作れるか試してみます

変数

確認

結果

Pythonの仮想環境が起動しているか確認する

コマンド

何も返って来ません

確認

結果

Djangoサイトを起動します

確認

結果

コマンド

結果

ちょっとアラートでてますが、スルーしてブラウザーから http://127.0.0.1:8000/ にアクセスします。

Welcome_to_Django

ローカルのDjangoサイトを停止します

Djangoアプリケーションの設定

Djangoサイトの起動を確認できたのでサンプル・アプリケーションを準備します

先ほどまでの作業の流れで、Pythonの仮想環境が起動している状態での作業となります。

コマンド

確認

結果

Elastic Beanstalk は requirements.txt を使用して、アプリケーションを実行する EC2 インスタンスにどのパッケージをインストールするかを判断します。

そのため、上記操作でインストールされているパッケージが何なのかebに伝えることが出来ます。

django.configの設定

コマンド

configファイルに設定を流し込みます

コマンド

この設定 WSGIPath は、アプリケーションを起動するのに Elastic Beanstalk が使用する WSGI スクリプトの場所を指定します。

これで仮想環境下の作業は完了したので、仮想環境を終了します。

コマンド

プロンプト先頭の(eb-virt) が消えていれば完了です。

デプロイ環境の確認

確認

結果

上記ディレクトリ構成になっていれば完了です。
次回はebコマンドを使用したデプロイからデプロイしたアプリケーションの更新などをしていきたいと思います。
がんばります!

Pocket