標準搭載の「画面共有」を使う
「画面共有」を開き、納品情報に記載されたVNCアドレスとポートを入力します。下記のSSHトンネルをすでに設定している場合は、ローカルアドレスとローカルポートに接続してください。SSH秘密鍵ではなく、納品情報に記載された認証情報を使います。
Xcode、Simulator、システム設定の操作に適しています。
まずSSHでコマンドライン接続を確認し、次にVNCでデスクトップを開きます。インターネットへの露出を抑えたい場合は、VNCをSSHトンネル経由で接続してください。ご利用のマシンは仮想マシンではなく、専用物理マシンです。実際のアドレス、ポート、アカウントはコンソールの納品情報をご確認ください。
まだマシンをお持ちでない方は、機種と拠点をお選びください。注文済みの方はコンソールにログインし、インスタンスの接続情報を確認して、以下の手順1から始めてください。
接続を始める前に、コンソールから次の4項目を確認してください。パスワードや秘密鍵をサポートチケットに記載しないでください。
SSHは暗号化されたコマンドライン接続です。macOSとLinuxではターミナル、WindowsではPowerShellから実行できます。例のアドレス、ポート、ユーザー名を、コンソールに記載された情報に置き換えてください。
ssh-ed25519 で始まる公開鍵だけを、リモートアカウントの ~/.ssh/authorized_keysに追加してください。ssh -p <SSHポート> <ユーザー名>@<ホストアドレス>
ssh-keygen -t ed25519 -C "cloud-mac"
cat ~/.ssh/id_ed25519.pub
ssh -i ~/.ssh/id_ed25519 \
-p <SSHポート> <ユーザー名>@<ホストアドレス>
PCに鍵がすでにある場合は、既存の秘密鍵を上書きしないよう、まずファイル名を確認してください。公開鍵は1行全体をコピーし、リモート側の ~/.ssh と authorized_keys のパーミッションをそれぞれ 700 、 600に設定してください。
VNCは、Macのデスクトップ画面をPCに転送して操作するリモート接続方式です。まず、コンソールに記載されたデスクトップ接続先のアドレス、ポート、認証方式を確認してください。SSHとは異なる場合があります。
「画面共有」を開き、納品情報に記載されたVNCアドレスとポートを入力します。下記のSSHトンネルをすでに設定している場合は、ローカルアドレスとローカルポートに接続してください。SSH秘密鍵ではなく、納品情報に記載された認証情報を使います。
Xcode、Simulator、システム設定の操作に適しています。
クライアントにホスト、ポート、納品情報に記載された認証情報を入力します。接続先を1つの欄に入力する場合は、クライアントの説明に従って「ホスト:ポート」形式を使ってください。SSHトンネルを優先し、接続先にはローカルのループバックアドレスを指定します。
プロトコルはVNCを選択してください。SSHポートをデスクトップ用ポートとして使わないでください。
画質を最高から中程度に下げ、クライアントが要求するフレームレートも下げてください。まずはモニター1台と適切なデスクトップ解像度で、接続が安定するか確認します。画面よりキーボード入力の反応がよい場合は、開発環境をすぐに再インストールするのではなく、利用場所から拠点までのネットワーク経路を確認してください。
SSHトンネルを使うと、PCのローカルポートからリモートデスクトップのポートへ安全に転送できます。クライアントはローカルに接続するため、接続のためにVNCをインターネットへ公開する必要はありません。実行前に、納品情報でこの接続方式が許可されていることを確認してください。
5901 はローカルで使用する空きポートです。サーバー側の固定ポートを示すものではありません。-N は転送だけを行い、リモートコマンドを実行しない指定です。127.0.0.1:5901に接続してください。使い終わったらクライアントを終了し、トンネルを実行しているターミナルを閉じます。ssh -N \
-L 127.0.0.1:5901:127.0.0.1:<遠端VNC端口> \
-p <SSHポート> \
<ユーザー名>@<ホストアドレス>
ローカルの 5901 が使用中の場合は、 -L の最初のポートだけを変更し、VNCクライアントでも同じ新しいポートを指定してください。ローカルのポート競合を解決するために、リモートポートを変更しないでください。
セルフホストランナーは、お使いのマシン上でCIジョブを実行する仕組みです。まずSSHでログインし、Xcodeのコマンドラインツールが使えることを確認してから、CIプロジェクトの設定で登録用の認証情報を作成してください。使い捨てトークンをリポジトリやビルドログに書き込まないでください。
プロジェクトのランナー設定でmacOSランナーを選び、ページに表示される最新のインストール・設定コマンドを使ってクラウドMacに登録します。機種、拠点、用途がわかるラベル(例: macos、m4、ios-build)を付けてください。ワークフローの runs-on は、実際に設定したラベルと一致させます。
登録後は、まず xcodebuild -version だけを実行する小さなジョブを動かしてから、本番ビルドに組み込んでください。
現在のプロジェクトの登録手順を確認し、クラウドMacに対応するバージョンのランナーをインストールします。プロジェクトの要件に応じてshell実行方式を選択してください。ランナーには拠点とビルド内容がわかるラベルを設定します。保護されたジョブをそのランナーで実行できるか確認してから、テストパイプラインを実行してください。
並列数を増やす前に、ジョブからXcode、署名用データ、プロジェクトの依存関係にアクセスできることを確認してください。
利用するランナーの公式なサービス登録手順に従って、プロセスをmacOSのバックグラウンドサービスとして登録し、実行アカウントを明確にします。再起動後、サービスの状態とテストジョブを確認してください。対話型ターミナルでビルドできても、バックグラウンドサービスが同じ環境変数やキーチェーンにアクセスできるとは限りません。利用期間の終了前に登録トークンを無効化し、保管が必要な成果物をバックアップしてください。
利用可能な拠点はシンガポール、日本(東京)、韓国(ソウル)、香港の4か所です。主な利用者に近い拠点を選び、実際に使うネットワークからSSHの応答速度とデスクトップの操作感をテストしてください。国際回線、パケットロス、ローカルネットワークも結果に影響するため、地名だけで遅延を判断することはできません。
| 拠点 | 優先して検討するチームの所在地 | 接続時の確認ポイント |
|---|---|---|
| シンガポール | 東南アジアの開発・ビルドチーム | オフィスネットワークから拠点までの実際の往復遅延 |
| 日本(東京) | 日本および周辺地域の開発チーム | デスクトップ操作とビルド成果物の転送が安定しているか |
| 韓国(ソウル) | 韓国および北東アジアの開発チーム | 混雑する時間帯にパケットロスが発生するか |
| 香港 | 華南・東南アジアの共同作業チーム | チームメンバーごとの接続経路 |
2種類のマシンは4拠点すべてで選択できます。注文時の在庫状況はコンソールでご確認ください。チームが複数の地域に分かれている場合は、日常的にデスクトップを使うメンバーに近い拠点を優先し、CIジョブではソースコードや成果物の転送経路も考慮しましょう。
同じ拠点の複数台を連携させるビルドや、大容量ファイルを頻繁にやり取りするワークフローには、Thunderbolt 5接続が適しています。オプション料金は1台あたり$1/日です。選ぶかどうかはタスクの転送量や並列実行の要件に応じて判断してください。VNC接続や1台でのCI実行に必須ではありません。
たとえば、複数のApp target、テストの分割、異なるバージョンのビルドを、それぞれ別のランナーに割り当てられます。各マシンに異なるラベルを設定し、必要なツールが入っていない拠点にジョブが誤って割り当てられないようにしてください。
まず1台での所要時間を測り、並列化による効果を見積もりましょう。
ビルドの主な待ち時間が署名、依存関係のダウンロード、外部APIにある場合、並列接続がボトルネックとは限りません。転送するファイルのサイズ、頻度、必要なマシン台数を整理し、注文時の設定でオプションを確認してください。
拠点をまたぐ連携は、ローカルの並列接続だけでは実現できません。
まずコンソールでインスタンスの状態、アドレス、ポートを確認し、SSH、VNC、ローカルネットワークのどこに問題があるか切り分けます。ビルド成果物をバックアップする前に、環境を何度もリセットしないでください。
まずSSHでログインできることを確認し、デスクトップセッションを切断してから再接続してください。VNC認証情報、トンネルの稼働状況、接続先がローカル転送ポートか納品された直通ポートかを確認します。SSHは正常なのに複数のクライアントで画面が表示されない場合は、インスタンス番号、発生時刻、スクリーンショットを添えてコンソールからサポートチケットを送信してください。
まずクライアントの固定スケーリングを無効にし、次にmacOSのディスプレイ設定を確認してください。リモートデスクトップでは、モニター1台と一般的な解像度で接続をテストします。設定を変更したら再接続し、サーバー側の表示設定とクライアントの拡大縮小設定のどちらに原因があるか確認してください。
ローカルとリモートのキーボード配列が一致しているか確認してください。特に記号、Optionキー、Commandキーを確認します。クライアント設定で修飾キーの割り当てを確認し、まずテキストエディタで少数の文字を試してから、コマンドの入力や署名設定の変更を行ってください。
まずSSHで再接続します。トンネルを使っている場合は転送コマンドを再実行してから、ローカルのVNCポートに接続してください。ビルドは接続を維持したデスクトップターミナルに頼らず、バックグラウンドランナーで実行することをおすすめします。SSHとVNCのどちらも復旧できない場合は、注文番号、拠点番号、エラーのスクリーンショットを添えて、コンソールからサポートチケットを送信してください。
SSHで小さなタスクから始め、デスクトップとCIが要件を満たすことを確認してから、利用期間の延長やマシンの追加をご検討ください。既存のインスタンスについてサポートが必要な場合は、コンソールにログインしてチケットを送信してください。