ドキュメント

困ったときは、該当する手順を確認

専用の物理Mac miniへの接続から、ビルド、利用期間の管理、トラブル解決までご案内します。コマンドや問題のキーワードで、このページ内の該当箇所を検索できます。

01 / 初回接続

接続先を確認して、SSHかリモートデスクトップを選ぶ

利用開始後、コンソールのインスタンス詳細でホスト名、ユーザー名、接続方法を確認してください。コマンド例の変数を実際の認証情報として使わないでください。実行前に、今回の利用環境に合わせて設定してください。

SSHキーで接続

ローカル端末でキーペアを生成し、公開鍵をコンソールに登録します。秘密鍵は手元の端末で安全に保管してください。インスタンスが利用可能で、鍵が登録されていることを確認したら、インスタンス詳細に記載されたホスト名とユーザー名で接続します。

ssh-keygen -t ed25519
ssh -i ~/.ssh/id_ed25519 "$USER@$HOST"

USER と HOST は、ローカル環境で設定する環境変数です。初回接続時はホスト鍵のフィンガープリントを確認し、検証を省略しないでください。

VNCリモートデスクトップ

Xcode、シミュレータ、システム設定を操作する場合は、コンソールのインスタンス詳細に記載された方法でリモートデスクトップに接続してください。接続前にインスタンスの状態を確認し、画面の接続先と認証情報を照合します。

画面の遅延が大きい場合は、クライアントの解像度や色深度を下げ、ローカルネットワークの状態を確認してください。VNCの認証情報をビルドログに記載したり、SSH秘密鍵と一緒に共有したりしないでください。

ポートとファイアウォール

実際に開放されているポートは、コンソールのインスタンス詳細で確認してください。すべてのインスタンスで同じポートが使われるとは限りません。SSHがタイムアウトする場合は、まずローカルネットワークで外向き接続が遮断されていないかを確認し、ホスト名、ポート、インスタンスの状態を照合してください。ファイアウォールルールを変更する前に、管理用の接続手段を確保し、アクセスできなくならないようにしてください。

02 / ビルドワークフロー

ツールチェーンを固定して、再現可能なビルドに

専用の物理Macでコマンドラインビルドを行う前に、Xcodeのバージョンがプロジェクトの要件に合っているか確認してください。チームのCIでは、プロジェクト、Scheme、署名用ファイルの取得元を固定し、一時的なデスクトップ操作に依存しない構成にします。

Xcodeのバージョンとコマンドラインツール

まず、マシンにインストールされているXcodeを一覧表示し、プロジェクトで必要なバージョンを選択してください。切り替え後は、コマンドラインツールのパスとバージョンを再確認します。以下のパスは、該当バージョンがインストールされている場合にのみ使用してください。

ls /Applications | grep Xcode
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
xcode-select -p
xcodebuild -version

xcodebuildとfastlane

プロジェクトのディレクトリで利用可能なSchemeを一覧表示し、ビルド対象を確認してからReleaseビルドを実行してください。fastlaneを使う場合は、laneの設定をバージョン管理し、実行前に証明書と環境変数を確認します。

xcodebuild -list
xcodebuild -scheme App -configuration Release build
bundle exec fastlane gym

App は、プロジェクトに実在するScheme名に置き換えてください。gym を使うには、プロジェクトに対応するfastlaneの設定が必要です。

01専用アカウントを用意

タスクを実行するシステムアカウントに必要な権限を設定し、作業ディレクトリを限定してください。SSH秘密鍵や署名用ファイルをリポジトリに登録しないでください。

02runnerを登録

GitHub ActionsまたはGitLabのプロジェクト設定で登録に必要な情報を生成し、各プラットフォームが案内する最新のインストール手順に従ってMacに登録してください。

03タスクを実行して確認

まず、 sw_vers と xcodebuild -version の結果を出力する簡単なタスクを実行し、正しいノードで動作していることを確認してから、ビルド全体を設定してください。

納品されたインスタンスを初めて使う場合は、まずクイックスタートに沿って接続し、最初のビルドを実行してください。

用語ガイド

インスタンスと利用期間を理解する8つの用語

以下の用語は、利用するデバイス、接続方法、料金の単位を区別するためのものです。プランを選ぶ際は、まずワークロードに必要な条件を確認し、そのうえで利用期間を決めてください。

物理ノード
Mac miniが実際に設置されている場所です。ノードを選ぶ際は、ご自身やチームメンバーのネットワーク環境を考慮してください。提供中の設置場所はノード情報で確認できます。
専有物理マシン
1件の注文につき、実機のMac miniを1台利用できます。CPU、メモリ、ストレージは他の利用者と共有しません。
仮想マシンではない
ご利用いただくのは物理Macの使用権です。共有ホスト上に作成された仮想インスタンスではありません。
VNC
macOSのグラフィカルデスクトップに接続する方式です。画面操作が必要な開発やデバッグに適しています。
SSHキー
公開鍵と秘密鍵で構成される認証情報です。公開鍵を登録して接続を許可し、秘密鍵はご自身で管理してください。
self-hosted runner
CIプラットフォームに登録し、レンタル中のMacでビルドタスクを実行するプログラムです。実行できる操作は、そのrunnerを動かすシステムアカウントの権限によって異なります。
Thunderbolt 5接続
プランで選べる追加オプションで、デバイスごとに料金がかかります。構成と対応するワークロードはプランページでご確認ください。
利用期間
注文時に選択する日単位、週単位、月単位、または四半期単位の料金周期です。各周期の料金は個別に設定され、利用期間は納品時刻から始まります。
03 / 料金と更新

利用期間は納品時刻からスタート

注文時に機種、ノード、利用期間、追加オプションを選び、選択した期間分の料金を一括でお支払いいただきます。注文に記載された納品時刻と終了時刻は、コンソールの記録を基準にしてください。支払い時刻から利用可能時間を推定しないでください。

01注文内容を確認

支払いの前に、機種、ノード、日・週・月・四半期のいずれかの利用期間を確認してください。実際の在庫状況は、コンソールに表示される最新情報をご確認ください。

02終了時刻の通知を確認

納品後、コンソールで利用期間と終了日時を確認してください。通知は作業計画の補助として利用し、バックアップ計画の代わりにしないでください。

03更新または上位プランへ変更

引き続き利用する場合は、コンソールの注文から更新手続きを開始してください。Commit 16からCommit 24に変更する場合は、新しい構成とデータ移行の計画を確認してから、コンソールの手順に従ってください。

お支払いと決済

お支払い方法はUSDT-TRC20、またはStripe経由のVisa、Mastercard、Amexに対応しています。料金の表示と決済はすべて米ドル(USD)です。チェックアウト時に利用できる決済ゲートウェイは、コンソールの表示をご確認ください。機種別および4種類の利用期間の料金は、プランと料金をご覧ください。

04 / よくあるトラブル

まず、問題が起きている箇所を特定

インスタンスの状態、ネットワーク、システムセッション、プロジェクト設定の順に確認してください。エラーの全文、発生時刻、試した手順を記録しておくと、チケットでの調査がスムーズになります。

VNCで接続できるが、画面が真っ黒

まず、コンソールでインスタンスが接続可能な状態か確認してください。いったん切断してグラフィカルセッションに再接続し、クライアントの解像度を下げてみてください。SSHが使える場合は、コマンドに応答するか確認します。チケットにはクライアントに表示されたメッセージ、接続時刻、SSHが使えるかどうかを記載し、接続パスワードは添付しないでください。

SSHがタイムアウトし、認証画面も表示されない

タイムアウトは通常、鍵の認証が始まる前に発生します。コンソールに表示されたホスト名とポート、インスタンスの状態、ローカルネットワークで外向き接続が許可されているかを確認してください。別のネットワークでも試し、結果を記録してください。ポートのルールを確認する前に、秘密鍵を何度も変更しないでください。

ビルド時にディスク容量不足のエラーが出る

まず df -h を実行して空き容量を確認し、ビルド成果物、DerivedData、アーカイブ、モデルファイルの使用量を調べてください。削除する前にファイルの所有者を確認し、残す必要がある成果物はバックアップしてください。継続的により大きな容量が必要な場合は、プランページでSSDの追加オプションをご確認ください。

キーチェーンや署名証明書が原因でアーカイブに失敗する

証明書の有効性、プロビジョニングプロファイルとBundle IDの一致、ビルドを実行するアカウントに該当するキーチェーンの読み取り権限があるかを確認してください。デスクトップのログインアカウントとCI runnerのアカウントは異なる場合があります。同じアカウントでエラーを再現してください。チケットには機密情報を伏せたエラーログを添付できますが、秘密鍵や証明書のパスワードは送信しないでください。

インスタンスの利用終了前に

終了前にデータをエクスポートし、保管期間をバックアップ代わりにしない

プロジェクトのソースコード、ビルド成果物、証明書、モデルファイルは、ご自身でバックアップしてください。利用期間終了後のインスタンスへのアクセスはサービス利用規約に従って扱われます。データの保持期間とその後の消去ルールについては、サービス利用規約および注文情報をご確認ください。終了後もログインしてファイルを取得できるとは限りません。

01成果物をエクスポート

コードを自分のリポジトリにコミットし、まだ保管していないIPA、ログ、モデルの出力結果は、ご自身で管理するストレージにコピーしてください。

02機密情報を確認

署名証明書、鍵、CI変数の利用範囲を確認してください。必要に応じてプロジェクト側で認証情報をローテーションし、秘密鍵を共有のビルドログに残さないでください。

03次の手順を確認

同じインスタンスを引き続き使う場合は、早めに更新オプションをご確認ください。利用を終える場合は、バックアップからデータを読み出せることを確認してから、終了作業を行ってください。

まだ解決しませんか?

状況と確認結果をお知らせください

注文済みの場合はコンソールにログインしてチケットを送信し、注文番号、ノード、問題の発生時刻、エラー情報を記載してください。注文前の接続や設定については、お問い合わせページからメールでご相談いただけます。