(1) Create a working directory (2) Set up a virtual environment (3) Install the necessary framework and WEB server (4) Create Flask file in Python (5) Try running the Flask file (6) Deploy to Heroku ① Register an account with Heroku ② Install Heroku with Homebrew ③ Prepare Git ④ Create an app on Heroku ⑤ Link the local app with the Heroku app ⑥ Create the files required for deployment to Heroku ⑦ Deploy to Heroku (7) Error handling ① Heroku ps: scale web = 1 is normal ② Heroku ps: scale web = 1 is not normal (8) Update the file
Since I always work on the desktop, I set up a directory on the desktop this time as well. First, start the Mac terminal and type cd desktop, then mkdir myproject, which will create a directory my-project on your desktop.
Then in the terminal, do cd myproject and move into the directory my-project. Set up your development environment locally using Python's venv, a feature that provides a virtual environment.
python3 -m venv .
Then enter the following to activate the virtual environment.
source bin/activate
By the way, if you want to disable the virtual environment, enter as follows.
deactivate
Next, install the framework.
pip install flask
Also, install the WEB server.
pip install gunicorn
In the enabled virtual environment, enter the following to create an executable file in my-project. This time I created a file called hello.py.
touch hello.py
Next, open hello.py and enter the following. In addition, app.run () becomes app.run (debug = false) as it is, and the debug mode is off. In the production environment, setting debug = true is dangerous, so I left it as the default. For details, refer to the following. https://www.subarunari.com/entry/2018/03/10/いまさらながら_Flask_についてまとめる_〜Debugger〜
hello.py
# -*- coding: utf-8 -*-
#Required even if commented out when using Japanese
#Import required libraries such as flask
from flask import Flask
#Instantiate your name as app
app = Flask(__name__)
@app.route('/')
def index():
return 'Hello World!'
#app.run()Is set to false by default
if __name__ == '__main__':
app.run()
Operate in the terminal again. Try in your local environment to see if the created hello.py works. Enter the following in the terminal.
python3 hello.py flask run
Then, the following is displayed.
* Serving Flask app "hello" (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)
127.0.0.1 - -
If you access http://127.0.0.1:5000/ in the above part with a browser, the following will be displayed.
It was confirmed that it works normally in the local environment. Press control + c to return to terminal input mode.
How to upload with Heroku, Flask, Python, Git (Part 2)
Recommended Posts