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アカウントに接続する必要があります。
接続すると、リポジトリがリストに表示されます。
3. 作成時に以下の値を入力してください。
Field | Value |
---|---|
Runtime | Go (任意のバージョン) |
Build Command | go mod tidy && go build -tags netgo -ldflags '-s -w' -o app |
Start Command | ./app |
Port | 8080 |
これらの値を対応するフィールドに入力します。
4. アプリにアクセスします。
デプロイが完了すると、デプロイメントページにfoo-bar.leapcell.dev
のようなURLが表示されます。サービスページに表示されているドメインにアクセスしてください。
Ginのサンプルでは、/ping
エンドポイントが公開されているので、foo-bar.leapcell.dev/ping
にアクセスしてテストできます。
継続的デプロイメント
リンクされたブランチへのプッシュごとに、自動的にビルドとデプロイがトリガーされます。失敗したビルドは安全にキャンセルされ、次回のデプロイが成功するまで現在のバージョンが実行されたままになります。
継続的デプロイメントの詳細はこちらをご覧ください。