Flask + Markdown Viewer を Render に無料でデプロイする手順書
✅ この手順の目的
-
Flaskアプリ(Markdown Viewer)を Render.com 上に無料でデプロイ
-
GitHubと連携し、自動デプロイを構築
-
Flaskそのままで使えるので構成変更不要
Render とは?
-
Python(Flask/Django)などを簡単にホスティングできるプラットフォーム
-
GitHubと連携してデプロイ可能
-
無料プランあり(自動スリープあり)
必要なファイル構成
/markdown-viewer/
├── app/
│ ├── __init__.py
│ ├── routes.py
│ ├── templates/
│ └── static/
├── markdowns/
├── requirements.txt
├── run.py ← Flask起動用エントリポイント
1. run.py
の内容
from app import app
if __name__ == "__main__":
app.run(debug=False, host="0.0.0.0", port=10000)
✅ ポイント:
host="0.0.0.0"
にすることで外部からアクセス可能
2. ローカルで最終確認
pip install -r requirements.txt
python run.py
🚀 3. GitHub にリポジトリをプッシュ
git init
git add .
git commit -m "initial commit"
git remote add origin https://github.com/yourname/markdown-viewer.git
git push -u origin main
4. Render にログイン & デプロイ設定
-
「New +」→ Web Service を選択
-
GitHubアカウントを連携
-
以下のように設定:
項目 | 設定値 |
---|---|
Name | markdown-viewer(任意) |
Runtime | Python |
Build Command | pip install -r requirements.txt |
Start Command | python run.py |
Instance Type | Free |
- 「Create Web Service」を押すとデプロイ開始
✅ 完了後の確認
-
自動で
https://your-app-name.onrender.com
のURLが発行 -
Markdown Viewer が表示されていれば成功 🎉
-
Markdownを追加・修正 →
git push
で自動再デプロイ
無料プランの注意点
項目 | 内容 |
---|---|
自動スリープ | 15分アクセスがないと一時停止、最初のアクセスは少し遅くなる |
DB永続化 | 必要な場合は別途PostgreSQLサービス追加(無料枠あり) |
カスタムドメイン | 独自ドメインも無料で設定可能(DNS設定が必要) |
✅ おすすめ:.env
にPORTなどを書く場合
Renderは環境変数 PORT
を自動で注入してくるので、以下のようにもできます:
import os
from app import app
if __name__ == "__main__":
port = int(os.environ.get("PORT", 10000))
app.run(debug=False, host="0.0.0.0", port=port)
これで「FlaskをRenderで世界に公開」完了です!
-
Flaskコードを維持したまま
-
Markdownで記事を追加・更新
-
URLでいつでも誰でも閲覧可能に!