Webアプリを開発したら、誰でもアクセスできるようにデプロイ(公開)する必要があります。しかし、「デプロイって難しそう…」「サーバーの設定が面倒そう…」と感じる人も多いでしょう。
そこで今回は、無料で使えて設定もシンプルな Render を使ったデプロイ方法を解説します!
目次
1. Renderとは?なぜおすすめ?
Renderは、手軽にWebアプリやバックエンドAPIをデプロイできる PaaS(Platform as a Service) です。
以下の特徴から、初心者でも使いやすいサービスとして人気があります。
- 無料プランあり:個人開発なら無料プランで十分
- GUIで簡単にデプロイ:GitHubと連携すればボタン一つでOK
- HTTPS対応:独自ドメインの設定も可能
- サーバーレスに近い:インフラの管理不要
特に、「FlaskやDjangoで作ったアプリをサクッと公開したい」というPythonユーザーには最適です!
2. RenderでFlaskアプリをデプロイする手順
今回は Flaskで作成したシンプルなWebアプリ を例に、Renderへデプロイする流れを解説します。
ローカルでアプリを作った後、GitHubにアップロードし、Renderでデプロイする流れです。
① Flaskアプリを作成
まずは簡単なFlaskアプリを作ります。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return "Hello, Render!"
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
このコードを app.py
という名前で保存してください。
② 必要なファイルを準備
Renderでデプロイするために、以下のファイルを用意します。
- requirements.txt(依存パッケージを記述)
Flask
gunicorn
- Procfile(起動コマンドを記述)
web: gunicorn -w 4 -b 0.0.0.0:5000 app:app
requirements.txt
は pip freeze > requirements.txt で作成できます。
③ GitHubリポジトリにアップロード
作成したファイルをGitHubにアップロードします。
git init
git add .
git commit -m "Initial commit"
git branch -M main
git remote add origin https://github.com/あなたのユーザー名/flask-render.git
git push -u origin main
④ Renderでデプロイ
GitHubにアップロードしたら、Renderの設定を行います。
- Renderの公式サイト にアクセスし、無料アカウントを作成
- 「New Web Service」 をクリック
- GitHubと連携 し、作成したリポジトリを選択
- 設定画面で以下の情報を入力
- Branch:main
- Runtime:Python
- Build Command:
pip install -r requirements.txt
- Start Command:
gunicorn -w 4 -b 0.0.0.0:5000 app:app
- 「Create Web Service」 をクリックするとデプロイ開始!
⑤ デプロイ完了!
数分待つとデプロイが完了し、 公開URLが発行 されます。
ブラウザでアクセスして、「Hello, Render!」が表示されれば成功です!
4. Renderでできる便利な設定
Renderでは、環境変数やカスタムドメインの設定も簡単です。
① 環境変数を設定する
APIキーやデータベースのパスワードをコードに直接書くのは危険です。
Renderでは、 「Environment Variables」 に設定することで、安全に管理できます。
- Renderの管理画面で 「Environment Variables」 を開く
SECRET_KEY
などの変数を追加
アプリ内で以下のように使用できます。
import os
SECRET_KEY = os.getenv("SECRET_KEY")
② カスタムドメインを設定する
Renderでは、デフォルトでhttps://your-app.onrender.com
のURLが発行されますが、
独自ドメインを使いたい場合は 「Custom Domains」 から設定できます。
5. まとめ
今回は、Renderを使ったFlaskアプリのデプロイ手順 を解説しました。
Renderは無料で使えて設定もシンプルなので、初心者にもおすすめです。
デプロイの流れをおさらい
- Flaskアプリを作成(
app.py
) requirements.txt
とProcfile
を準備- GitHubにアップロード
- Renderでデプロイ設定
- 公開URLで動作確認
特に「とにかく簡単にデプロイしたい!」という場合は、Renderが非常に便利です。ぜひ活用してみてください!