このページでは、ローカルコンピューターに依存せず Waker を継続稼働させるために、QoderWake をクラウド環境へデプロイする方法を説明します。クラウド環境は、インストール方法とアクセス方法が異なる次の 2 種類に分かれます。
| 比較項目 | クラウドデスクトップ(GUI あり) | Linux ECS(GUI なし) |
|---|
| 操作方法 | リモートでデスクトップに接続します。操作はローカルコンピューターとほぼ同じです | SSH 経由のコマンドラインのみです |
| インストール方法 | デスクトップでインストーラーまたはインストールコマンドを実行します | SSH 経由でインストールコマンドを実行します |
| Web UI の開き方 | クラウドデスクトップ上のブラウザーでローカルアドレスを開きます | サーバーアドレスまたは SSH ポートフォワーディングを使用して、ローカルブラウザーから開きます |
| ポートの公開 | 不要 | 直接アクセスでは TCP 19820 の許可が必要です |
| 適した用途 | ローカルと同じ操作感で、GUI から稼働状態を確認したい場合 | コマンドラインのみの環境で、長時間の無人運用が必要な場合 |
どちらの環境も電源を入れたまま稼働させる必要があります。停止すると、実行中のタスクは中断されます。
クラウドデスクトップにデプロイする
クラウドデスクトップは、グラフィカルインターフェースを備えたクラウド上のデスクトップ環境です。デスクトップとブラウザーがあるため、QoderWake のインストール、ログイン、使用方法はローカルコンピューターと同じです。SSH ログインや、Web UI にアクセスするための追加ポートの開放は必要ありません。
インストール前にクラウドデスクトップを確認する
クラウドデスクトップサービスが提供する方法でリモート接続し、デスクトップに入ってから、仕様と環境を確認します。
次のいずれかの推奨構成を使用してください。
| 構成 | 仕様 | ディスク | 適した用途 |
|---|
| 標準 | 4 vCPU、8 GB | 100 GB | 同時に実行する Waker が少なく、一般的な規模のコードリポジトリを扱う場合 |
| 上位 | 8 vCPU、16 GB | 160 GB | 複数の Waker を同時に実行する場合、または大規模なコードリポジトリや作業ディレクトリを扱う場合 |
どちらを選ぶか迷う場合は、標準構成から始めてください。動作が明らかに遅い場合やディスク容量が不足した場合は、クラウドデスクトップサービスが提供する方法で上位構成へアップグレードします。
次の条件も確認してください。
| 項目 | 要件 |
|---|
| オペレーティングシステム | Windows 10 以降、macOS 13.0 以降、またはデスクトップ環境を備えた主要な Linux ディストリビューション |
| ネットワーク | Qoder サービス、モデルサービス、コードリポジトリ、使用するコネクターにアクセスできること |
| アカウント権限 | プログラムのインストール、バックグラウンドサービスの起動、対象作業ディレクトリへのアクセスができること |
クラウドデスクトップの仕様とイメージがサービスプロバイダーによって割り当てられている場合は、まずイメージに QoderWake がプリインストールされているか確認します。プリインストール済みの場合はインストールを省略し、コンソールを開いてログインします。
クラウドデスクトップに QoderWake をインストールする
クラウドデスクトップのオペレーティングシステムに応じて、次のいずれかの方法を選択します。いずれもクラウドデスクトップ内で完了するため、ローカルコンピューターからファイルを転送する必要はありません。
Windows クラウドデスクトップ
- クラウドデスクトップ上のブラウザーで QoderWake Web サイトを開き、Windows インストーラー(
.exe)をダウンロードします。
- インストーラーをダブルクリックし、ウィザードに従ってインストールします。
- 画面の案内に従って Qoder アカウントを認証し、サービスが起動するまで待ちます。
macOS クラウドデスクトップ
- クラウドデスクトップ上のブラウザーで QoderWake Web サイトを開き、「MacOS」を選択した後、クラウドデスクトップのチップに応じて「ARM64(Apple Silicon)」または「X64(Intel)」パッケージを選択します。
.dmg をダウンロードして開き、QoderWake を「アプリケーション」にドラッグします。
- 「アプリケーション」から QoderWake を開き、画面の案内に従ってアカウントを認証して、サービスが起動するまで待ちます。
GUI を備えた Linux クラウドデスクトップ
クラウドデスクトップでターミナルを開き、次のコマンドを実行します。
curl -fsSL https://qoder-ide.oss-ap-southeast-1.aliyuncs.com/qoderwake/install.sh | bash
コマンドの実行中はターミナルを閉じないでください。認証ページが表示されたら、クラウドデスクトップ上のブラウザーで認証を完了し、ターミナルに戻ってインストールが完了するまで待ちます。
インストーラーはシステムプラットフォームを自動的に検出し、必要なコンポーネントをダウンロードします。インストールが完了したら、バージョンを確認します。
qoderwake が見つからないと表示された場合は、新しいターミナルウィンドウを開きます。それでも使用できない場合は、完全なパス ~/.qoderwake/bin/qoderwake を使用します。
アカウントの切り替えやトークンの使用など、その他のログイン方法はローカルコンピューターと同じです。詳細はクイックスタートを参照してください。
コンソールを開いて確認する
- クラウドデスクトップ上のブラウザーで Web Console を開きます。ブラウザーが自動的に開かない場合は、クラウドデスクトップで
qoderwake portal を実行します。
- クラウドデスクトップでサービスが稼働していることを確認します。
- Waker 管理を開いて現在のアカウントの Waker リストが表示され、Waker を作成または開けることを確認します。これでデプロイは完了です。
Web UI を初めて開いたときに Qoder の認証が必要な場合は、このページの「Qoder へのログインを完了する」と「QoderWake コンソールに入る」を参照してください。どちらのセクションもクラウドデスクトップに適用されます。
クラウドデスクトップ自体で Web UI にアクセスする場合は、デフォルトのローカル専用リッスンアドレスを維持します。リッスンパラメーターの変更や、セキュリティグループでの TCP 19820 の許可は必要ありません。同じインスタンスへローカルコンピューターや他のデバイスからもアクセスする場合は、このページの ECS セクションにある 2 つのアクセス方法のいずれかを使用し、同様にネットワーク公開のリスクを評価してください。その場合も、インスタンスで使用できる Qoder アカウントは 1 つだけです。
クラウドデスクトップをスリープさせない
クラウドデスクトップがスリープした場合、切断後に一時停止された場合、またはスケジュールによりシャットダウンされた場合、実行中のチャットタスクや自動タスクは中断され、スケジュール済みタスクも実行時刻を逃します。デプロイ後、次の 2 つのレイヤーを設定します。
- クラウドデスクトップ OS の電源設定:システムの電源とスリープの設定で、スリープ、休止状態、ディスプレイをオフにした後の一時停止を「しない」に設定し、操作していない間もシステムが稼働し続けるようにします。
- クラウドデスクトップコンソールのセッションおよびシャットダウンポリシー:クラウドデスクトップ管理コンソールで、アイドル切断、無人操作タイムアウト、スケジュールシャットダウンを無効にします。無効にできない場合は、タイムアウトをタスクの最長実行時間より長く設定します。
リモートセッションを切断することは、クラウドデスクトップをシャットダウンすることとは異なります。上記 2 つのレイヤーで長時間稼働が許可されている場合、切断後も QoderWake はクラウドデスクトップでタスクを実行し続け、次回接続したときに結果を確認できます。
ECS にデプロイする
以下の SSH ログイン、インストールコマンド、2 つのアクセス方法は、GUI のない Linux ECS に適用されます。「Qoder へのログインを完了する」と「QoderWake コンソールに入る」では、Web UI を開いた後の共通フローを説明しており、クラウドデスクトップにも適用されます。
ECS の全体的な流れは、SSH でログインしてインストールを完了し、いずれかのアクセス方法で Web UI を開いた後、Qoder にログインしてコンソールに入ることです。
| 比較項目 | 方法 1:サーバーアドレスから直接アクセス | 方法 2:SSH ポートフォワーディングでアクセス |
|---|
| QoderWake のリッスンアドレス | 0.0.0.0:19820(サーバーのすべてのネットワークインターフェース) | 127.0.0.1:19820(サーバー内のみ) |
| ブラウザーのアドレス | http://<サーバーIP>:19820/ | http://127.0.0.1:19820/ |
| SSH 転送 | 不要 | ローカルコンピューターで SSH 転送接続を維持する必要があります |
| ネットワーク条件 | ECS のファイアウォールまたはクラウドセキュリティグループで TCP 19820 を許可します | ローカルコンピューターから SSH で ECS に接続できる必要があります |
| アクセス範囲 | ECS の 19820 ポートに到達できるデバイスからアクセスできます。各デバイスで同じ Qoder アカウントを使用して個別にログインします | QoderWake のポートを外部に直接公開せず、SSH トンネル経由でアクセスします |
<ユーザー名> と <サーバーIP> は実際の値に置き換えてください。SSH ではアカウントパスワードまたは設定済みの鍵を使用できます。このページでは認証情報の設定方法は扱いません。
SSH で ECS にログインする
ローカルコンピューターでターミナルを開き、実際のユーザー名とサーバーアドレスを使って ECS に接続します:
ssh <username>@<server-ip>
パスワード認証の場合、表示に従って Linux アカウントのパスワードを入力してください。鍵が設定されている場合、SSH が直接認証を完了することがあります。ログインに成功すると、コマンドプロンプトが ECS 上のユーザー名とホスト名に切り替わります。
QoderWake をインストールする
ECS にログインした後、次のコマンドを実行して QoderWake をインストールします:
curl -fsSL https://qoder-ide.oss-ap-southeast-1.aliyuncs.com/qoderwake/install.sh | bash
インストーラーはシステムのプラットフォームを自動的に検出し、必要なコンポーネントをダウンロードします。インストール完了後にバージョンを確認してください。Qoder アカウントは Web UI を開いた後にログインを完了します。ECS 上で先にアカウントログインを行う必要はありません。
QoderWake が見つからない旨のプロンプトが表示された場合は、終了して SSH 接続を確立し直すか、インストーラーの表示に従って現在のシェル環境を更新してください。バージョンが正常であることを確認した後、次の 2 つのアクセス方法のうちいずれかを選んで続行してください。
macOS ターミナルの例 1: SSH ログイン、インストール、バージョン確認
次の例は、SSH ログイン、QoderWake のインストール、バージョン確認の流れを示しています。
方法 1: サーバーアドレスによる直接アクセス
この方法では QoderWake が 0.0.0.0:19820 をリッスンします。ECS のポート 19820 にアクセスできるネットワーク上のデバイスは、SSH フォワーディングを確立せずに、サーバーアドレス経由で直接 Web UI を開けます。
ECS 上で QoderWake を起動する
まず現在の QoderWake プロセスを停止します。プロセスがまだ起動していない場合、未起動を示すプロンプトは後続の起動に影響しません:
次に、QoderWake にサーバーのすべてのネットワークカードをリッスンさせます。コマンドの実行後、ネットワーク公開のリスクについて確認を求められます。表示に従って yes と入力し、Enter キーを押して続行してください:
qoderwake start --host 0.0.0.0 --port 19820
yes を入力することは、QoderWake がすべてのネットワークインターフェースをリッスンすることを確認したことを意味します。セキュリティグループ、ファイアウォール、ネットワーク経路を通過を許可されたすべてのデバイスがポート 19820 に到達できます。受信アクセスを信頼できる送信元 IP またはネットワークに限定してください。ネットワークの境界を検証できない場合は、代わりに SSH ポートフォワーディングを使用してください。
この方法はいくつかのデバイスからのアクセスに対応していますが、各デバイスで独自のブラウザからサインインし、QoderWake インスタンスに関連付けられた同じ Qoder アカウントを使用する必要があります。yes を入力してもセキュリティグループやファイアウォールが開放されるわけではなく、HTTPS や IP 許可リストの設定も行われません。
macOS ターミナルの例 2: サーバーアドレスによる直接アクセス
次の例は、QoderWake の停止、直接アクセスモードの起動、ネットワーク公開リスク確認のための yes 入力の全体の流れを示しています。
赤枠はネットワーク公開の警告と yes による確認を強調しています。
ネットワーク条件を確認する
- ECS のセキュリティグループ、サーバーのファイアウォール、その他の上流のネットワークポリシーで、TCP 19820 への受信アクセスを許可する必要があります。
- この方法では、このポートにアクセスできるデバイスに対して QoderWake Web UI が公開されます。信頼できるネットワークでのみ使用し、実際の環境に応じてアクセス制御を設定してください。
ブラウザで開く
ECS にアクセスできる別のマシンでブラウザを開き、次にアクセスします:
http://<server-ip>:19820/
この方法では追加の SSH フォワーディング接続を維持する必要はありません。ページが開いたら、後続の SSH フォワーディング操作を行うことなく、直接 Qoder にログインできます。
複数デバイスによるアクセスとアカウント要件
方法 1 では、複数のコンピューターやサーバーが同じ ECS アドレス経由で QoderWake にアクセスできますが、ブラウザのサインイン状態は各デバイスで独立しており、自動的に共有されません。
- 各デバイスで、QoderWake Web UI を初めて開く際に、それぞれのブラウザで Qoder のサインインを完了する必要があります。
- すべてのデバイスで、QoderWake インスタンスに関連付けられた同じ Qoder アカウントを使用する必要があります。
- 別のアカウントでの認証は失敗するため、そのアカウントではインスタンスのコンソールに入れません。
方法 2: SSH ポートフォワーディングによるアクセス
この方法では、QoderWake に ECS マシンの 127.0.0.1:19820 のみをリッスンさせ、その後 SSH 経由でポートをローカルコンピューターに転送します。QoderWake のポートは外部に直接公開されず、セキュリティグループで TCP 19820 を開放する必要もありません。
ECS 上で QoderWake を起動する
まず現在の QoderWake プロセスを停止します:
次に、QoderWake に ECS のローカルマシンのみをリッスンさせます:
qoderwake start --host 127.0.0.1 --port 19820
ローカルコンピューターで SSH フォワーディングを確立する
ローカルコンピューターで別のターミナルウィンドウを開き(ECS のターミナルでは実行しないでください)、次のコマンドを実行します:
ssh -N -L 19820:127.0.0.1:19820 <username>@<server-ip>
SSH からアカウントパスワードを求められる場合や、設定済みの鍵が直接使われる場合があります。通常、フォワーディングの確立後には出力が続かなくなります。ターミナルを起動したままにし、Ctrl+C を押してフォワーディングを終了してください。
macOS ターミナルの例 3: SSH ポートフォワーディングによるアクセス
ターミナル A で ECS 上の QoderWake を起動し、ターミナル B でローカルコンピューター上の SSH フォワーディングを確立します。フォワーディング確立後、ターミナル B は起動したままで、通常は出力がなくなります。
ブラウザで開く
SSH フォワーディングのターミナルを起動したまま、ローカルのブラウザで次のアドレスにアクセスします。ページが開いたら Qoder にログインできます:
Qoder ログインを完了する
いずれのアクセス方法でも QoderWake Web UI を開いた後、現在のブラウザが Qoder にログインしていない場合でも、次の流れに従って続行できます:
- QoderWake ページで「Login」をクリックします。元のページに「Waiting to log in」と表示され、同時に新しい Qoder ページが開きます。
- 新しいページに Qoder のログインページが表示される場合は、まずアカウントログインを完了してください。ブラウザがすでに Qoder にログインしている場合は、直接アカウント確認ページに入れます。
- 「Continue to use this account?」ページでアカウントを確認して「Continue」をクリックし、元の QoderWake ページに戻ってログイン成功を待ちます。
初回バインドに関する説明: QoderWake インスタンスがまだ Qoder アカウントに関連付けられていない場合、最初に認証に成功したアカウントがデーモンの所有者(インスタンスのマスターアカウント)になります。インスタンスがすでにアカウントに関連付けられている場合、後続のアクセスでは同じ Qoder アカウントを使用する必要があり、他のアカウントでは認証を完了できません。
ログイン処理中、ローカルのブラウザは https://qoder.com にアクセスできる必要があり、ECS 側にも Qoder サービスへアクセスするためのアウトバウンドネットワーク機能が必要です。「Login」をクリックしても新しいページが表示されない場合は、現在のサイトによるポップアップウィンドウの表示を許可してから再試行してください。認証が完了する前に元の QoderWake ページを閉じないでください。
Qoder ログイン成功
QoderWake コンソールに入る
ログインに成功したら、ページの案内に従ってワークスペースに入ります。次の内容が表示されれば、QoderWake Web UI は通常利用の準備ができています:
- ページが正常に読み込まれること。
- Waker Management を開いて、現在のアカウントの Waker リストを確認できること。
- Waker を作成または開けること。
QoderWake コンソール