LoginSignup
53
59

More than 1 year has passed since last update.

HerokuにFlaskアプリをデプロイする

Last updated at Posted at 2020-01-25

概要

Herokuに最小のFlaskアプリをデプロイするまでの手順を記載します。

前提条件

  • Herokuに登録していること
  • Heroku CLI が導入済みであること
  • 仮想環境は利用しない
  • 下記がインストールされていること
    • flask(pip install flask、または、pip3 install flask)
    • gunicorn(pip install gunicorn、または、pip3 install flask)

手順

必要なリソースを作成

プロジェクトファイル置くディレクトリを作成し、ディレクトリに移動する。

$ mkdir flaskonheroku
$ cd flaskonheroku

必要なファイルを作成する。

$ touch app.py Procfile

app.py を下記の通り編集する。

# -*- coding: utf-8 -*-
from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return 'hello, world'

if __name__ == '__main__':
    app.run()

Procfile を下記の通り編集する。

web: gunicorn app:app --log-file=-

ローカル環境で動くか確認

$ python app.py
 * Serving Flask app "app" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

アドレスにアクセスし、問題なければOK。

デプロイに必要なファイルを作成

requirements.txtを作成する。

$ pip freeze > requirements.txt

gitリポジトリの準備

gitリポジトリとして初期化する。

$ git init
$ git add .
$ git commit -m "first commit"

Herokuアプリの作成

Herokuにログインしてアプリを作成する。

$ heroku login
$ heroku create

Herokuへアプリをデプロイ

リモートリポジトリが作られているので、プッシュする。

$ git remote
heroku
$ git push heroku master

アプリの確認

アプリを開いて確認する。

$ heroku open

以降、コードを修正しcommitした後、git push heroku master すれば再度デプロイされて変更がサイトに反映されます。

53
59
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
53
59