Go Fiberプロジェクトを無料でホスティングする方法
Emily Parker
Product Engineer · Leapcell

Go Fiber の紹介
Fiberは、Express.jsにインスパイアされたGo言語のWebフレームワークです。
Fasthttp(Go用の最速HTTPエンジン)上に構築されているため、優れたパフォーマンスと低いメモリフットプリントで知られています。Fiberは、ゼロメモリ割り当てと高パフォーマンスを維持しながら、迅速な開発プロセスを簡素化するように設計されています。
Express.js開発モデルに慣れており、極端なパフォーマンスを求めるチームにとって、Fiberは優れた選択肢です。
Go Fiber をライブサービスとしてデプロイする方法は?
Go Fiberプロジェクトをオンラインにデプロイする従来の方法は、Digital OceanやAWS EC2などからVPSを購入することです。
この方法は柔軟性がありますが、サービスにトラフィックがあるかどうかにかかわらず、サーバーを購入した瞬間から費用が発生します。これはそれほど費用対効果の高いオプションではありません。
より良いデプロイメントソリューション:Leapcell
LeapcellはWebアプリデプロイメントプラットフォームです。革命的な価格プランを提供しています。リクエストを処理するときにのみ料金が発生します。
これは、Fiberプロジェクトが着信リクエストなしでアイドル状態の場合、1セントも支払う必要がないことを意味します。この「従量課金」モデルは、実際に見ている使用量に対してのみ支払うため、Go Fiberプロジェクトの運用コストを大幅に削減できます。
以下に、簡単な例を使用して、新しいGo FiberプロジェクトをLeapcellに簡単にデプロイする方法を示します。
1. Fiber プロジェクトの作成
開始する前に、Go言語環境がインストールされていることを確認してください。
プロジェクトディレクトリの作成とGoモジュールの初期化
ターミナルを開き、新しいプロジェクトディレクトリを作成して、そこへ移動します。
mkdir my-fiber-app cd my-fiber-app
次に、go mod init
を使用してGoモジュールを初期化します。example.com/myfiberapp
は、プロジェクトに使用したい任意の名前で置き換えることができます。
go mod init example.com/myfiberapp
Go Fiber フレームワークのインストール
go get
コマンドを使用してFiber v3をインストールします。
go get github.com/gofiber/fiber/v3
メインプログラムファイル main.go の作成
プロジェクトのルートディレクトリに main.go
という名前のファイルを作成し、次のコードを貼り付けます。これは最もシンプルなGo Fiberアプリケーションで、アクセスされたときに「Hello, Leapcell!」を返す単一のルート /
だけがあります。
package main import ( "log" "os" "github.com/gofiber/fiber/v3" ) func main() { // Fiber インスタンスを作成 app := fiber.New() // ルート => ハンドラ app.Get("/", func(c *fiber.Ctx) error { return c.SendString("Hello, Leapcell!") }) // Leapcell によって提供されるポートを取得し、ローカル実行ではデフォルトで 8080 を使用します port := "8080" // サーバーを起動 log.Fatal(app.Listen(":" + port)) }
Fiberサービスを開始するには、ターミナルで次のコマンドを実行します。
go run main.go
サービスがポート8080で開始されるのが表示されます。ブラウザを開くか curl
を使用して http://localhost:8080
にアクセスすると、「Hello, Leapcell!」という出力が表示されるはずです。
2. プロジェクトを GitHub にプッシュする
Leapcell は GitHub リポジトリからコードを読み取ってデプロイします。Leapcell がアクセスできるように、プロジェクトを GitHub にプッシュする必要があります。
GitHub アカウントの作成
まだ GitHub アカウントをお持ちでない場合は、github.com にアクセスしてサインアップしてください。
登録後、次の手順については公式 GitHub ドキュメントを参照してください。
3. Leapcell ダッシュボードでサービスを作成し、Fiber リポジトリを接続する。
Leapcell ダッシュボードにアクセスし、「新規サービス」ボタンをクリックします。
「新規サービス」ページで、作成したばかりの Fiber リポジトリを選択します。
4. 作成中に次の値を指定する:
Go はコンパイル言語なので、go build
を使用して Go アプリケーションをビルドします。
この例では、Golang プロジェクト名は app
なので、それにコンパイルされます。
フィールド | 値 |
---|---|
Runtime | Go (任意のバージョン) |
Build Command | go build -tags netgo -ldflags '-s -w' -o app |
Start Command | ./app |
Port | 8080 |
これらの値を対応するフィールドに入力します。
5. Go Echo アプリにアクセスする:
デプロイ後、デプロイページに foo-bar.leapcell.dev
のような URL が表示されるはずです。サービスページに表示されているドメインにアクセスしてください。
継続的デプロイメント
リンクされたブランチへのすべてのプッシュは、ビルドとデプロイを自動的にトリガーします。ビルドが失敗した場合、安全にキャンセルされ、次の正常なデプロイまで現在のバージョンが実行され続けます。
Go言語ホスティングでLeapcellを使用する理由
- Leapcell は、Webホスティングのための次世代サーバーレスプラットフォームであり、Go言語プロジェクト全体をクラウドにデプロイできます。
- Leapcell は実際の使用量に対してのみ課金するため、マシンがアイドル状態でも1セントも支払う必要はありません。
- Leapcell は、毎月リセットされる寛大な無料クォータを提供しています。日常的な使用では、クォータを超えることはまずないでしょう。
Leapcell で Golang サービスをデプロイしましょう!