Django + Heroku のセットで無料でサービスを作る

Django + Heroku のセットで無料でサービスを作るDjango
ゆうすけ
ゆうすけ

自分でプログラミングをして、Webサービスを作りたいです。

資格マフィア
資格マフィア

DjangoとHerokuを使えば、
無料でサービスを作ることができるぞ。


✔️ 本記事のテーマ

DjangoとHerokuを使って、Webサービスを作る方法


✔️ 読者さんへの前置きメッセージ


本記事は「DjangoとHerokuで無料でWebサービスを作る方法」について書いています。


この記事を読むことで「DjangoとHerokuをセットで使って、無料でWebサービスを作るまで」をイメージできるようになります。


DjangoはPythonによるWebアプリケーションフレームワークです。


Herokuは無料で使える軽量なアプリケーションサーバーです。


このDjangoとHerokuをセットで使うことで、
「手軽に」かつ「無料で」Webサービスを作ることができます。

 

なお、PythonとHerokuの相性の良さについては
HerokuとPythonは相性が良いという話」の記事で解説しています。

 

Django(Pythonフレームワーク)とは?

Django(Pythonフレームワーク)とは?

Django(ジャンゴ)は、
Python用のWebアプリケーションフレームワークです。


オープンソースとして公開されているので、無料で使うことができます。


Webアプリケーションフレームワークとは、Webアプリケーションを開発する際によく使われる機能がまとまったソフトウェアのことです。


Djangoを使うことで、コンテンツ管理システムやニュースサイトやSNSサイトを、手軽に作成することができます。


個人開発でアプリケーションを作るときでも、Djangoを使うことで短い期間で、かつ、高品質なアプリケーションを完成させることができます。


最近では、Instagramなどでも採用されていることから、その注目度が高まっているフレームワークといえるでしょう。

 

Djangoの使い方やメリットの詳細については
Djangoの使い方【Pythonフレームワーク】」の記事で解説しています。

 

Herokuとは?

Herokuとは?

Herokuとは、Web上でサービスを運用するためのホスティングサービスです。


ホスティングサービスとは、

  • ネットワークなどのインフラ
  • OSなどのプラットフォーム

がセットで用意されているサービスです。


これにより、開発者はインフラ面の面倒ごとを無視できるので、
アプリケーションの開発に集中することができます。

 

なお、Herokuを無料でフル活用する方法については
Herokuを無料でフル活用する方法」の記事で解説しています。

 

DjangoとHerokuの相性の良さ

DjangoとHerokuの相性の良さ

どちらもWebアプリケーションを作るために便利なフレームワークやサービスです。


このDjangoとHerokuはセットで使うことでより大きな効果を発揮します。


ちなみに、どちらも無料で使うことができます。


Djangoでサクッとアプリケーション作って、HerokuでWeb上に公開するという流れでスピード感のある開発が可能になります。


また、DjangoとHerokuは連携しやすい機能が用意されています。


Puthonライブラリでも「django-heroku」というライブラリが用意されています。


このライブラリは優秀で、DjangoとHerokuを連携するための面倒ごとを上手いことやってくれます。


このように、DjangoとHerokuはセットで使うのに都合が良いので、
なるべくセットで使いましょう。

 

なお、Django(Pythonフレームワーク)の使い方については
Djangoの使い方【Pythonフレームワーク】」の記事で解説しています。

 

次から、DjangoとHerokuをセットで使う方法を解説していきます。

HerokuにDjangoアプリケーションをデプロイする方法

HerokuにDjangoアプリケーションをデプロイする方法

HerokuにDjangoをセットで使うのは、比較的簡単です。


HerokuにDjangoアプリケーションをデプロイするには、以下の手順で行います。

  1. 必要なライブラリをインストールする
  2. 実行環境ファイルを作成する
  3. プロジェクトの設定ファイルを修正する
  4. Gitでコミットする
  5. Herokuコマンドでデプロイする


順番に、詳しく解説していきましょう。

必要なライブラリをインストールする

DjangoアプリケーションをHeroku上で稼働させるために、
必要なライブラリをインストールします。

pip install gunicorn django-heroku


gunicorn , django-heroku の二つを入れておけば、
だいたい問題なく動くのでOKです。

実行環境ファイルを作成する

Djnagoアプリケーションの実行環境をHerokuに伝えるファイルをプロジェクトディレクトリ直下に作成します。


作成するファイルは、「runtime.txt」「Procfile」「requirements.txt」の3つです。

runtime.txt

Pythonバージョンを記載するファイルです。


決まった形式で記述する必要があります。

python-3.6.6

Procfile

Herokuプロセスの起動コマンドを記載するファイルです。


<your-project-name>は自身のプロジェクト名に読み替えて下さい。

web: gunicorn <your-project-name>.wsgi --log-file -

requirements.txt

依存パッケージのリストを記載します。


以下のように、pip freezeコマンドの出力結果をそのままファイルにしましょう。

pip freeze > requirements.txt

プロジェクトの設定ファイルを修正する

Djangoプロジェクト内のsettings.pyの「DEBUG = Ture」の部分を本番運用向けに変更します。


TrueをFalseに書き換えると、本番で稼働できるようになります。

DEBUG = False

Gitでコミットする

Gitでローカルリポジトリの作成 & コミットを行います。

git init                                
git config user.name "Your Name"        
git config user.email you@example.com   
git add .                            
git commit -m "first commit"

Herokuコマンドでデプロイする

HerokuコマンドでHerokuにデプロイします。


heroku loginコマンド実行時にブラウザが立ち上がり、Herokuの認証を求められます。


ログインした後、ブラウザを落とさずにターミナルに戻ると後続の作業が行えます。

heroku login
heroku create <your-app-name>
git push heroku master
heroku ps:scale web=1
heroku run python manage.py migrate


以上でデプロイ作業は完了です。

DjangoやHerokuについてもっと学ぶなら

DjangoやHerokuについてもっと学ぶなら

DjangoやHerokuはその手軽さから、
システム開発の現場から個人開発まで、幅広い場面で利用されています。


特にDjangoはPythonフレームワークの中では最も有名なフレームワークなので、
汎用性のあるスキルと言えるでしょう。

 

DjangoについてスキルをつけるならUdemyの教材がオススメです。

>> Djangoの基礎をマスターして、3つのアプリを作ろう!

 

Udemyは買い切りの動画学習サービスです。
一度購入してしまえば、その教材はずっと使うことができます。

 

さらに今なら30日間返金保証がついているので、
一度購入して自分の思っていたものと違った場合は費用がかかりません。

 

上記の教材は実際にアプリを作りながらDjangoスキルを習得できます。
その教材の質の高さから1000件以上の購入 & 4.4以上の評価となっています。

 

また、Pythonについて基礎から学ぶのであれば、オンラインスクールがオススメです。


オンラインスクールで学習すると、講義も分かりやすく、
サポート体制もしっかりしているので、これからPythonを学ぶ人にもオススメです。


オンラインで無料レッスンを体験することもできるので、
自分にあっているかどうかを確かめることができます。


オススメは以下の3つです。
どのスクールも無料体験が用意されているので、
契約前に自分に最適なスクールを探すことができるでしょう。

✔️オススメのプログラミングスクール ベスト3

プログラミングスクールについては「プログラミングスクールで失敗しないためには【オススメベスト3も紹介】」の記事でも紹介しています。


気になった方はぜひチェックしてみて下さい〜!

コメント

タイトルとURLをコピーしました