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

Leapcellの仕組み

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

Join Discord

Leapcellとは?

Leapcellは、アプリケーション指向のPaaSプラットフォームであり、デプロイメントコストの削減とソフトウェア開発ライフサイクルを簡素化するように設計されています。 他のPaaS製品と比較して、Leapcellはユーザーにすべてのコードをオンラインでデプロイすることを推奨しており、トラフィック分析CI/CDパイプラインを通じて継続的な最適化とイテレーションを実現しています。 私たちの目標は、あなたのアイデアの価値を最大化することです。


サービス(またはプロジェクト)とは?

Leapcellにおけるサービス(またはプロジェクト)とは、当社のプラットフォーム上でデプロイ、実行、管理するアプリケーションのことです。

LeapcellはNode.js、Python、Go、Rustで記述されたアプリケーションをサポートしています。

The Twelve-Factor Appの原則に従うことをお勧めします。まだお読みでない場合は、現代的なアプリケーション開発のベストプラクティスとして強くお勧めします。

通常、アプリケーションは以下で構成されます。

  • ソースコード(サポートされている言語のいずれかで記述され、場合によってはフレームワークを使用)
  • 依存関係記述ファイル(例:requirements.txtpackage.json)。アプリケーションのビルドと実行に必要な追加ライブラリを指定します。

これらの構成を提供するだけで、デプロイメントプロセス全体をこちらで処理します。

  • ビルドコマンド: アプリケーションをビルドするために実行されるbashコマンド(またはbashスクリプト。複数行のコマンドがサポートされています)。通常、pip install -r requirements.txtnpm installなどの依存関係をインストールするコマンドが含まれます。
  • 起動コマンド: アプリケーションを起動するために使用されるコマンド。例:gunicorn -b :$PORT app:appまたはnode server.js
  • ポート: アプリケーションが受信リクエストをリッスンするポート。Leapcellゲートウェイは、受信トラフィックをこのポートにルーティングします。

追加設定:

  • ルートディレクトリ: アプリケーションのルートディレクトリ。ソースコードと構成ファイルが配置されています。

デプロイメントとは?

Leapcellは、コンテナをデプロイメントの標準として使用します。プロセスは次のとおりです。

  1. ソースの取得

    • 設定されたGitリポジトリ(通常はGitHub)とブランチからソースコードをクローンします。
  2. ビルドコマンドの実行

    • プロジェクト設定で定義されたビルドコマンドを実行します。
    • 例:
      • Python: pip install -r requirements.txt
      • Node.js: npm install
  3. イメージのビルド

    • コードをLeapcellのサンドボックス環境に送信します。
    • docker buildを使用してDockerイメージをビルドします。
  4. フロントエンドの最適化(条件付き)

    • プロジェクトがLeapcellのフロントエンドデプロイメントの最適化に一致する場合:
      • ビルドから静的ファイルを抽出します。
      • 高パフォーマンス配信のために、ワークスペースのデフォルトCDNに自動的にアップロードします。

サービスライフサイクルとは

サービスの起動

以下の図は、Leapcell Linux VM内でサービスがどのように起動されるかの全プロセスを示しています。

Service Lifecycle
  1. 設定された起動コマンドをBash経由で実行します。
    • コマンドが失敗する場合は、ビルドコマンドで依存関係が見落とされていないか確認してください。
  2. ポートがリッスンしていることを確認するために、0.0.0.0:{your_port}/kaithhealthを継続的にポーリングします。
  3. 起動が完了すると、外部トラフィックを実行中のサービスにルーティングします。

アプリケーションサービスにアクセスするには?

デプロイ後、アプリケーション用のサフィックスleapcell.devのドメインが生成されます。リンクをクリックするだけで、サービスにアクセスできます。

サービスが失敗しました—デバッグするには?

Leapcellは最新のロギングインフラストラクチャを提供します。サービスパネルのLogsボタンをクリックして、サービスのリアルタイムログを表示できます。


次のステップ

Leapcellでのデプロイメント戦略、スケーリング、最適化についてさらに深く掘り下げるには、以下のドキュメントに進むことをお勧めします。