LINE Botを無料で公開!GitHub×Railway構築術

GitHubとRailwayを使ってLINE Botを構築・公開する様子を表したイラスト。YOSHINEKOキャラがノートPCで作業中。 AIツール実践
YOSHINEKOがGitHubとRailwayを使ってBotを作成中!

はじめに

LINE Botを無料でクラウド上に公開したい方必見!この記事では、GitHubとRailwayを使って「LINE Botを実際に動かす」までのステップを丁寧に解説します。

Python初心者でも、この記事を読めば最短30分でBotをネット上に公開できます。

今回は「Railway LINE Bot デプロイ」の実験を通して、Webhookの連携から実動作までしっかり検証しました。

>この記事は「ChatGPTで作るレシピAIアプリ」シリーズの第2-1回です。
>前回(第1回):「冷蔵庫の食材からレシピを提案するPython Botの作り方」はこちら。


まずは、GitHub×Railwayを使った「LINE Botの無料デプロイ」方法を初心者向けに紹介します。Webhook応答の設定まで、スクショ付きで完全再現します!

なぜこの方法に注目したのか

最近X(旧Twitter)やQiitaなどで「LINE Botを無料で公開する方法」が話題になっています。特にGitHubとRailwayを使った構成は、Herokuの無料枠終了後に代替手段として注目され、再現性の高さとコストゼロが魅力です。

今回は「生成AIを使って、どこまでBotを構築・公開できるか?」を検証する実験の一環としてこの方法を選びました。

筆者は非エンジニアで、PythonやGitHubに詳しくない初心者です。それでも、ChatGPTを使えば技術的な不安を解消しながら構築できるのではと考え、挑戦することにしました。

使用したツールと準備

GitHub:ソースコードの管理

まず、コードを安全に保存・共有できるサービスとしてGitHubを使います。リモートからRailwayと連携可能です。

Railway:Botを無料でホスティング

続いて、クラウドPaaSの一種であるRailwayを使えば、無料プランでも24時間稼働できます。

LINE Developers Console:Botの本体設定

ここでは、Webhook URLやチャネルシークレットの設定を行うLINE公式ツールを使用します。

Python:Botのロジックを記述

ユーザーのメッセージにどう応答するかなどの処理をPythonで実装します。

※画像:main.pyファイルをGitHubにアップロードした画面(main_py_アップロード済み.png.jpg)

ステップごとの手順と画像ガイド

STEP1:GitHubにコードを用意(約5分)

まずは、LINE Botの応答処理を記述します(例:main.py)。必要なライブラリをrequirements.txtに記載(例:line-bot-sdk, flask)。

GitHubにアップロードされたmain.pyとファイル構成の画面
main.pyをGitHubにアップロードした後の画面。左側にはファイル一覧、右側には更新履歴が表示されている。

STEP2:Railwayにデプロイ(約10分)

次に、GitHubのリポジトリをRailwayに連携します。GUI上の操作で簡単にデプロイ完了します。

RailwayでLINE Botのデプロイが成功した画面。緑色の「Deploymentsuccessful」が表示されている。
GitHubから連携されたLINE BotプロジェクトがRailway上で正常にデプロイされたことを示す画面キャプチャ。

STEP3:LINE Developers ConsoleでWebhookを設定(約10分)

このステップでは、チャネルアクセストークンやシークレットをRailwayの環境変数に設定します。
Webhook URLにRailwayのURLを入力し、「検証」→「成功」と表示されればOKです。

LINE DevelopersでWebhook URLの検証が「成功」と表示されている画面。緑色のOKボタン付き。
LINE Developers ConsoleでWebhook URLの検証が完了したことを示す成功メッセージ画面。
オール
オール

Webhook URLの末尾に空白があると検証失敗します!コピー時は要注意。

オール
オール

最初は改行が入っていて検証に何度も失敗しました…。

STEP4:LINEでBotの応答確認

続いて、LINEアプリでBotに「こんにちは」と送ると、設定した返信が届きます。

LINEアプリでBotにメッセージを送信した際のチャット応答画面。ユーザーの質問にBotが自動返信している様子が表示されている。
Botが「こんにちは」などのメッセージに対して応答しているLINEアプリの実際の会話画面。

STEP5:ログで状態を確認

最後に、Railwayの「Deploy Logs」「HTTP Logs」で、リクエストとレスポンスのログを確認します。ステータス200が出れば正常。400エラーなら環境変数やURLを再チェックしましょう。

Railwayのログ画面で、LINE BotからのPOSTリクエストが200レスポンスで正常に処理されている様子。callbackエンドポイントが機能していることが確認できる。
LINE BotからのメッセージがRailwayのcallbackに届き、HTTPステータス200で応答しているログ結果。

実験の結果と学び

成功した点

  • GUI操作が中心で初心者でも扱いやすい
  • GitHubとRailwayの連携がスムーズ
  • ログ確認ができて、トラブル時の原因把握が楽
オール
オール

今回は前回よりちょい苦戦。でも、自分の知識不足が原因でした。基本だけ知っていれば誰でもできます!

詰まったポイントと対策

  • 使うツールが多く、初回は画面の構成で迷った
  • エラー文が英語だけど、ChatGPTで意味を調べて対応
  • 環境変数の設定ミスでエラー → 正しく修正して解決

応用できる使い方

この方法を応用すれば、以下のようなBotも作れます

  • 社内通知やヘルプデスクBot(業務用)
  • 家庭用の買い物メモや予定通知Bot
  • 学習用のAPI連携Bot
  • 今後の展開:レシピBotや画像応答型Botへ!

まとめ:この構成なら初心者でも安心!

GitHub、Railway、LINE Developersを組み合わせることで、初心者でも無料でBotをクラウド上に公開できました。

  • 所要時間:約30〜45分
  • 無料枠で運用可能
  • スクショとログ付きで再現性あり

「LINE Botに画像を送信してみた記事はこちら」もあわせてどうぞ!

📝 チェックリストまとめ

  • 使用ツール:GitHub、Railway、LINE Developers、Python
  • 難易度:★☆☆☆☆(初心者向け)
  • 所要時間:30〜45分
  • 向いている人:LINE Botを簡単に公開したい人、無料で試したい人
  • 登録やダウンロード:すべて無料アカウントで可能

🔗 外部リンク:

✅ このステップを終えた方は、次回「第2-2回」でChatGPTと連携し“レシピ提案Bot”を作るステージへ!

コメント

タイトルとURLをコピーしました