LoginSignup
0
0

More than 1 year has passed since last update.

Cloud Runで動くflaskアプリをサクッと作る

Posted at

背景

Cloud Runで動く簡易的なFlaskアプリが必要だったので構築した時のメモ。

実装

Hello World返すFlaskのDockerイメージを作成する

main.py
from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "<p>Hello, World!</p>"

python3.9 + Flaskのイメージにする。ポートは80。

Dockerfile
FROM python:3.9

ENV APP_HOME /app
ENV FLASK_APP main
WORKDIR $APP_HOME
COPY . .

RUN pip install -r requirements.txt

CMD flask run --host=0.0.0.0 --port=80

EXPOSE 80
requirements.txt
#
# These requirements were autogenerated by pipenv
# To regenerate from the project's Pipfile, run:
#
#    pipenv lock --requirements
#

-i https://pypi.org/simple
click==8.0.3; python_version >= '3.6'
flask==2.0.2
itsdangerous==2.0.1; python_version >= '3.6'
jinja2==3.0.3; python_version >= '3.6'
markupsafe==2.0.1; python_version >= '3.6'
werkzeug==2.0.2; python_version >= '3.6'

イメージをビルドしてGCPにpushする

# ビルド
docker build -t flask_server:tag_name . 
# イメージをContainer Registryにpush
docker tag flask_server:tag_name gcr.io/${YOUR_PROJECT}/flask_server:tag_name 
docker push gcr.io/${YOUR_PROJECT}/flask_server:tag_name

Cloud Runのコンソールで、pushしたimageを指定してポート80で作成すればおk。

参照

0
0
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
0
0