メインコンテンツへスキップ

LeapcellにGo Ginアプリをデプロイする

もし以下の解決策で問題が解決しない場合は、LeapcellのDiscordコミュニティに参加して、さらに支援を受けてください。

Join Discord

LeapcellでGinフレームワークを使って、あなたのGoアプリを数ステップで素早くデプロイしましょう。Leapcellのサンプルアプリまたはあなた自身のものを使用してください。

情報

進めるにはGitHubアカウントが必要です。お持ちでない場合は、GitHubのウェブサイトで作成できます。

1. GitHubでGinのサンプルフォークしてください。

リポジトリ: Gin example

これは、公式Ginドキュメントから引用した、そのリポジトリのmain.goファイルです。

package main

import "github.com/gin-gonic/gin"

func main() {
めちゃくちゃ r := gin.Default()
めちゃくちゃ r.GET("/ping", func(c *gin.Context) {
めちゃくちゃ c.JSON(200, gin.H{
"message": "hello leapcell",
})
めちゃくちゃ })
めちゃくちゃ r.Run() // listen and serve on 0.0.0.0:8080
}

2. Leapcellダッシュボードでサービスを作成し、新しいリポジトリを接続します。

Leapcellダッシュボードに移動し、New Serviceボタンをクリックします。

「New Service」ページで、フォークしたリポジトリを選択します。

ヒント

リポジトリにアクセスするには、LeapcellをGitHubアカウントに接続する必要があります。

GitHubに接続するには、こちらの指示に従ってください。

接続すると、リポジトリがリストに表示されます。

3. 作成時に以下の値を入力してください。

FieldValue
RuntimeGo (任意のバージョン)
Build Commandgo mod tidy && go build -tags netgo -ldflags '-s -w' -o app
Start Command./app
Port8080

これらの値を対応するフィールドに入力します。

4. アプリにアクセスします。

デプロイが完了すると、デプロイメントページにfoo-bar.leapcell.devのようなURLが表示されます。サービスページに表示されているドメインにアクセスしてください。

Ginのサンプルでは、/pingエンドポイントが公開されているので、foo-bar.leapcell.dev/pingにアクセスしてテストできます。

継続的デプロイメント

リンクされたブランチへのプッシュごとに、自動的にビルドとデプロイがトリガーされます。失敗したビルドは安全にキャンセルされ、次回のデプロイが成功するまで現在のバージョンが実行されたままになります。

継続的デプロイメントの詳細はこちらをご覧ください。