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

はじめに

Square Cloud で Lavalink サーバー を開発してホストするには、構成と前提条件の体系的な手順に従うことが不可欠です。この技術ガイドでは、初期セットアップから本番環境へのデプロイまで、プロセス全体を解説します。

前提条件

  • Square Cloud アカウント: 登録ページからメールアドレスを使って登録します。
  • 有効なプラン: アプリケーションに専用リソースと最適化されたパフォーマンスを提供します。利用可能なプランを確認し、ニーズに最も適したものを選択してください。
このガイドは Java ランタイムで動作します。

プロジェクトの入手

公式リリースページから Lavalink.jar をダウンロードします。このガイドでは Lavalink v4 を使用します。最新の 4.x リリース (4.2.0 以降) を選び、ボットが v4 向けに作られ DAVE に対応した Lavalink クライアントを使っていることを確認してください (ボットの接続を参照)。
デプロイに必要なものはすべて当社の lavalink-web のリリースに用意されており、YouTube プラグインも設定済みです。project.zip をダウンロードしてアップロードし、Lavalink のデプロイ時に環境変数の LAVALINK_SERVER_PASSWORD の仮の値を長いランダムなパスワードに置き換えてください。
Lavalink.jar と同じ場所に application.yml ファイルを作成します。以下の最小構成は環境変数 PORT のポート (Square Cloud では 80 に設定されます) で待ち受け、公式の youtube-source プラグインで YouTube を再生します。Lavalink に組み込まれた YouTube ソースは非推奨になっているためです。
application.yml
Lavalink は初回起動時にプラグインをダウンロードします。その他のオプション (他のソース、フィルター、バッファー) については、公式のサンプルファイルを参照してください。
address: 0.0.0.0 は変更せず、ポートを 80 以外の固定値に置き換えないでください。Square Cloud はサブドメインへのトラフィックをアプリケーションのポート 80 に届けます。

強力なパスワードを設定する

password の値を、32 文字以上の強力でランダムなパスワードに置き換えてください。パスワードをファイルに残さないためには、代わりに環境変数 LAVALINK_SERVER_PASSWORD に設定します。Lavalink では環境変数が application.yml より優先されます。変数は、アップロードフォームの 詳細設定、ダッシュボードのアプリケーションの 環境変数 ページ、または CLI で追加できます。
その他の管理方法については環境変数を参照してください。

Square Cloud の設定

Lavalink.jar と同じ場所に squarecloud.app ファイルを作成します。SUBDOMAIN フィールドにより、サーバーが https://<subdomain>.squareweb.app で公開されます。
squarecloud.app
MAIN=Lavalink.jar により Square Cloud は java -jar Lavalink.jar でサーバーを起動します。MEMORY はサーバーの RAM (MB) で、AUTORESTART=true はクラッシュしたときにサーバーを再起動します (自動再起動の仕組みを参照)。

ZIP に含めるもの

  • Lavalink.jar
  • application.yml
  • squarecloud.app
ダッシュボードからアップロードするには、3 つのファイルを同じフォルダーに置き、.zip ファイルに圧縮します。

デプロイと動作確認

ダッシュボード経由

1

アップロードページにアクセス

アップロードページにアクセスし、プロジェクトの zip ファイルをアップロードします。
2

環境を設定

zip をアップロードした後、プロジェクトの名前、メインファイルまたはランタイム環境、その他の設定を構成する必要があります。
ウェブプロジェクトをアップロードする場合は、必ず「Web Publication」を選択し、プロジェクトにサブドメインを設定してください。
3

プロジェクトをデプロイ

最後に「Deploy」ボタンをクリックして、プロジェクトを Square Cloud にホストします。
デプロイ後、ダッシュボードからプロジェクトのステータスとログを監視できます。
Square Cloud へのアプリケーションのアップロード
4

アプリが稼働していることを確認

最初のデプロイは、通常 1 分もかからずに完了します。ダッシュボードでアプリケーションのステータスが running になるのを待ち、起動時のエラーがないかログを確認してください。
ウェブサイトや API をデプロイした場合は、ブラウザで https://<your-subdomain>.squareweb.app を開き、アプリケーションが応答することを確認してください。ボットをデプロイした場合は、コマンドを送信してオンラインになっていることを確認してください。
アプリが起動しませんか?よくある原因と修正方法はトラブルシューティングガイドを参照してください。

CLI 経由

この方法を使用するには、プロジェクトのルートに squarecloud.app という名前の設定ファイルが必要です。このファイルは、アプリケーションの実行方法を Square Cloud に伝えます。

設定ファイルガイド

アプリケーションの環境を定義する squarecloud.app 設定ファイルの作成方法を学びます。
1

CLI をインストール

Square Cloud CLI をインストールします。すでにお持ちの場合は、同じコマンドを実行すると更新されます:
2

ログイン

次のコマンドを実行します。ブラウザが開くので、そこでログインを承認すれば CLI の準備は完了です。API キーをコピーする必要はありません。スクリプトや CI については、CLI の認証を参照してください。
3

プロジェクトをアップロード

プロジェクトのフォルダで次のコマンドを実行します。CLI は squarecloud.ignore に記載されたものを除いて現在のフォルダを zip にし、アップロードします:
自分で作成した zip をアップロードするには、--file で指定します:
4

アプリが稼働していることを確認

最初のデプロイは、通常 1 分もかからずに完了します。ターミナルから直接、アプリケーションのステータスとログを確認してください。
ウェブサイトや API をデプロイした場合は、ブラウザで https://<your-subdomain>.squareweb.app を開き、アプリケーションが応答することを確認してください。ボットをデプロイした場合は、コマンドを送信してオンラインになっていることを確認してください。
アプリが起動しませんか?よくある原因と修正方法はトラブルシューティングガイドを参照してください。

ボットの接続

Square Cloud の内部では Lavalink はポート 80 で待ち受けますが、ボットは公開エッジを経由して接続し、エッジはポート 443 で HTTPS を提供します。Lavalink クライアントでノードを次のように設定してください (フィールド名はライブラリによって異なります)。
2026 年 3 月以降、Discord は音声のエンドツーエンド暗号化である DAVE に対応したボットしかボイスチャンネルに参加させません。Lavalink はバージョン 4.2.0 から DAVE に対応しており、ボットの Lavalink クライアントも対応している必要があります。対応していない場合、ボットは Lavalink には接続できてもボイスチャンネルに参加できません。

よくあるエラー

ポート 80 や secure: false での接続は失敗します。ボットの接続のとおり、ポート 443 と secure: true を使用してください。接続がコード 1006 で閉じられる場合は、Lavalink connection closed with code 1006 を参照してください。

次のステップ

Discord ボット

Lavalink サーバーに接続するミュージックボットをホストします。

Discord ボットのエラー

無効なトークン、インテントの不足、Lavalink の接続エラーを修正します。

Java ランタイム

Square Cloud が Java アプリケーションを実行する仕組み。
Lavalink の詳細は、Lavalink 公式ドキュメントを参照してください。

お問い合わせ

技術的な問題が解決しない場合は、専門のサポートチームがお手伝いします。お問い合わせいただければ、どのような問題でも喜んで解決をサポートいたします。サポートの質の高さも、開発者が Google と Trustpilot で Square Cloud に402 件のレビューで 4.9/5という評価をつけている理由の 1 つです。