【Railway】Beegoをデプロイする方法

Go 製フレームワーク Beego で開発したアプリを Railway にデプロイする方法を、日本語で詳しく解説します。テンプレート、CLI、GitHub、Dockerfile など複数の手法を網羅。

Share

Railwayはこちら (←このリンクから登録すると20ドル分のクレジットがもらえます)

Beegoアプリをデプロイする方法

Beego は Go 言語で書かれたハイパフォーマンスな Web フレームワークで、REST API や Web アプリ、バックエンドサービスを迅速に構築できます。

本記事では、Beego アプリを Railway にデプロイする 4 つの方法を紹介します。

  1. テンプレートからワンクリックデプロイ
  2. GitHub リポジトリからデプロイ
  3. Railway CLI からデプロイ
  4. Dockerfile を使ったデプロイ

Beego アプリを作成する

既に Beego プロジェクトがある場合はこの章をスキップしてください。
go install github.com/beego/bee/v2@latest # CLI インストール
bee new helloworld
cd helloworld
go mod tidy

Postgres ドライバの追加

go get github.com/lib/pq

main.go の例

package main
 
import (
    "fmt"
    _ "helloworld/routers"
    _ "github.com/lib/pq"
 
    "github.com/beego/beego/v2/client/orm"
    beego "github.com/beego/beego/v2/server/web"
)
 
type Users struct {
    ID        int    `orm:"column(id)"`
    FirstName string `orm:"column(first_name)"`
    LastName  string `orm:"column(last_name)"`
}
 
func init() {
    orm.RegisterDriver("postgres", orm.DRPostgres)
    orm.RegisterDataBase("default", "postgres", beego.AppConfig.String("db_url"))
    orm.RegisterModel(new(Users))
    orm.RunSyncdb("default", false, true)
}
 
func main() {
    o := orm.NewOrm()
    users := []Users{{FirstName: "Railway", LastName: "Beego"}}
    for _, u := range users {
        if id, err := o.Insert(&u); err == nil {
            fmt.Println("Inserted user id", id)
        }
    }
    beego.Run()
}

conf/app.conf の設定

appname = helloworld
runmode = dev
db_url = ${DATABASE_URL}

ローカル実行は bee run で OK です。


Railway へのデプロイ方法

テンプレートからワンクリックデプロイ

Railway テンプレートマーケットプレイスに Beego テンプレートが用意されています。クリック 1 回でデプロイが完了し、Postgres も自動で接続されます。

CLI からデプロイ

railway init               # 初期化
railway add -d postgres    # DB 追加
railway add                # Empty Service → 環境変数 DATABASE_URL 設定
railway up                 # デプロイ
railway domain             # 公開 URL 発行

GitHub リポジトリからデプロイ

Railwayダッシュボード
  1. Railway ダッシュボード → New ProjectDeploy from GitHub repo
  2. リポジトリ選択 → Deploy
  3. Postgres を追加し DATABASE_URL を設定
  4. Deploy をクリック
  5. Generate Domain で公開 URL を取得

Dockerfile を使ったデプロイ

FROM golang:1.22 AS builder
WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN go build -o app
 
FROM gcr.io/distroless/base-debian11
WORKDIR /app
COPY --from=builder /app/app ./app
COPY --from=builder /app/conf ./conf
COPY --from=builder /app/views ./views
COPY --from=builder /app/static ./static
ENV PORT=${PORT:-8080}
EXPOSE 8080
CMD ["/app/app"]

次のステップ

  • 認証 – Beego のフィルタと JWT を使って認証を実装
  • ORM マイグレーションgormbeego orm のマイグレーションを自動実行

Go × Beego × Railway でスケーラブルなバックエンドを構築しましょう!

Railwayはこちら (←このリンクから登録すると20ドル分のクレジットがもらえます)

Read more

サービス更新履歴

ここでは、LiveQのサービス・製品への変更を全て紹介しております。 このページは大きな変更があった場合に更新されます。 いつごろにどのような機能がリリースされたかが分かります。 2026年6月: 高速化・安定化 * 5月よりサーバーおよびアプリケーションの大型リニューアルに取り組み、6月に読み込み速度の向上や、大規模アクセス時にも安定して高速に動作するように変更をおこないました。 2026年4月: 画像スライド * 新たなスライドの種類として画像スライドを追加しました。 * PowerPoint, PDFファイルを一括インポートし、画像スライドとして追加する機能を追加しました * そのほか多数の細かな変更(操作性などのデザイン改善や、不具合)をおこないました 2026年3月: ワードクラウド、コメントのAIモデレーション(監視) * 新たなスライドの種類としてワードクラウドを追加しました * コメントをAIで自動監視する機能をリリースしました * そのほか細かな改善や不具合の修正をおこないました 2026年2月: 有料プランのデータエクスポート

By 阿部 隼也

チームメンバーを招待する方法

チームメンバーを追加するには、招待する必要があります。 その招待方法を紹介します。 招待可能なチームメンバーの数は、ご利用のプランによって異なるため、事前にご確認ください。 チームページの「新しいチームメンバーを招待」にて、招待するメンバーのメールアドレスを入力し、「招待を送信」をクリックします。 招待された側で招待を承認 次に、招待された側の方によって招待を承認する必要があります。 ※この承認にはLiveQのアカウントが必要となりますので、必ず事前にご登録ください。 下記のような招待メールが届きます。 件名:【LiveQ】チームへの招待が届いています 差出人:[email protected] 既にLiveQに登録済みの方はそのまま「招待を承認して参加する」ボタンをクリックします。 まだLiveQに登録していない方は、登録後、同様に承認ボタンをクリックします。 チームを切り替える 招待を承認すると、チームページに下記のように「チーム切り替え」ができるようになります。 招待したユーザーにもメールが届きます 招待が承認されると、招待したユーザーに

By 阿部 隼也