ホーム >  Python > Django >  ローカルDjangoの変更をherokuへプッシュする

投稿日:   |  最終更新日:

ローカルDjangoの変更をherokuへプッシュする

DjangoherokuPythonWebサービス

前回herokuが配布するDjangoアプリケーションをローカルで実行しました。今回は、Djangoの変更をherokuへプッシュします。

変更をpush

開発を進める中で、ローカルでDjangoの変更を行いherokuへ変更をプッシュを繰り返します。新しくpipコマンドでパッケージをインストールしてDjangoへ組み込みますが、この依存関係をherokuへ伝える必要があります。その流れを今回は紹介します。

チュートリアル

今回の説明も、基本的に以下の公式チュートリアルの内容をそのまま実行します。

PythonでHerokuを使い始める

準備

Vagrantでゲスト環境(仮想環境)を作ります。ゲスト環境の中にDjangoを構築します。その前に、以下の作業を終わらせましょう。

①Virtualboxをインストールします。Virtualboxのインストールまでで結構です。

VirtualBoxをインストールする for Ubuntu

②Vagrantをインストールします。centos7環境を作りますので、Vagrantのインストールのみ済ませてください。

Vagrantをインストールしてテスト環境を作る for Ubuntu

③herokuにアカウントを作成します。

herokuを使ってwebアプリを始めましょう!アカウント作成

④VagrantにHeroku CLI をインストールします。

Vagrant(CentOS7)にHeroku CLI をインストール

⑤herokuが配布するDjango環境をローカルに設置して、まずherokuへデプロイします。

超簡単!Vagrant(CentOS7)にheroku用のDjango開発環境を作ってherokuへデプロイ

⑥herokuのDjnagoをローカルで実行します。

heroku用のDjango開発環境をローカルで実行するには?

ホスト環境

OS Ubuntu 16.04.1 LTS 64bit
Virtualbox 5.1
Vagrant 1.9.5

ゲスト環境

OS CentOS 7.1.1503
Python 3.6.5
pip 9.0.3


vagrantのDjangoプロジェクトディレクトリへアクセス

①vagrantを起動してログインします。

vagrant up
vagrant ssh

②作っておいたpyenv仮想環境(test_django)も起動します。

. test_django/bin/activate
(test_django) [vagrant@localhost]$ #環境が有効になるとターミナルがこのように表示されます。

③前回クローンしたローカルバージョンのディレクトリに移動します。

cd python-getting-started

pipでパッケージをインストール

①requestsパッケージをローカル(pyenv仮想環境)にインストールします。

pip install requests

②インストールした内容をrequirements.txtファイルに追加します。

Djnagoのディレクトリ構成は以下のとおりです。

  • python-getting-started/
  • Procfile
  • Procfile.windows
  • README.md
  • app.json
  • db.sqlite3
  • manage.py
  • requirements.txt
  • runtime.txt
  • gettingstarted/
  • …省略
  • hello/
  • …省略

requirements.txtは、以下のような内容になります。これでパッケージの依存関係の設定が完了しました。

django
gunicorn
django-heroku
requests  ←これを記述

Djangoの内容を変更

requestsをDjangoで使用します。

①「hello/views.py」に以下の内容を記述します。

from django.http import HttpResponse
import requests

def index(request):
    r = requests.get('http://httpbin.org/status/418')
    print(r.text)
    return HttpResponse('<pre>' + r.text + '</pre>')

②ローカルでテストします。

heroku local web

③ブラウザから以下のURLでDjangoアプリを開きます。

http://vagrantのipアドレス:5000

以下のような結果が表示されます。

herokuへプッシュ

Herokuへpushする場合、ほとんど以下のパターンに従います。

①変更されたファイルをローカルのgitリポジトリに追加します。

git add .

②リポジトリに変更をコミットします。

git commit -m "Demo"

③herokuへ展開します。

git push heroku master

④ブラウザで、herokuにアプリを作成で作成されたアプリのURLを開きます。

→https://serene-caverns-xxxxx.herokuapp.com/

成功すると、同じ結果が表示されます。

トラックバック用のURL
プロフィール

名前:イワサキ ユウタ 職業:システムエンジニア、ウェブマスター、フロントエンドエンジニア 誕生:1986年生まれ 出身:静岡県 特技:ウッドベース 略歴 20

最近の投稿
人気記事
カテゴリー
広告