エンジニア向けサポートガイド

初回接続から問題の切り分けまで、クラウドMacを手順どおりに使い始める

ここでは、そのまま実行できる確認手順を紹介します。まず注文とノード情報を確認し、リモート接続、開発ツールチェーン、継続的インテグレーションを設定します。最後に、状況に応じてログを収集し、チケットを送信します。

ノード対象地域
シンガポール、日本(東京)、韓国(ソウル)、香港
サービス稼働
365日、年間を通して正常稼働
受付窓口
コンソールチケットまたはサポートメール
初回接続

何度も再接続する前に、5項目の基本確認を完了する

初回利用時によくある問題は、ノード情報の入力ミス、ローカルネットワークの制限、表示設定の不適切さです。順番に確認すれば、環境の問題をノードの問題と誤認せずに済みます。

  1. 01

    コンソールで今回の注文情報を確認する

    注文番号、モデル、ノード地域、接続先、ユーザー名、アクセス認証情報が同じ注文に紐づいていることを確認します。過去の注文のスクリーンショットやチャット履歴にある古い情報は使用しないでください。認証情報は管理下にあるパスワードマネージャーだけに保存してください。

    確認基準:モデルと地域が現在の注文と一致している
  2. 02

    リモートデスクトップ接続を確立する

    macOSのグラフィカルインターフェースに対応したリモートデスクトップクライアントを使用し、接続先とユーザー名を一字ずつ正確に入力します。接続できない場合は、まずローカルネットワークを一度切り替え、社内プロキシ、出口ファイアウォール、公衆ネットワークのポリシーによる影響を切り分けます。

    確認基準:macOSのグラフィカルインターフェースを表示してデスクトップを操作できる
  3. 03

    基本的なセキュリティ設定を完了する

    初回ログイン後にシステムログインパスワードを変更し、画面ロックまでの時間を確認します。また、プロジェクトの秘密鍵、署名認証情報、アクセストークンが共有スクリプト、コマンド履歴、公開リポジトリに書き込まれていないことを確認してください。パスワードや秘密鍵をサポート担当者に送らないでください。

    確認基準:アクセス認証情報を変更し、チームで安全に保管している
  4. 04

    解像度と画質を調整する

    使用するディスプレイに合った拡大率を選択します。ネットワークが不安定な場合は、まず画質と解像度を下げてからノードの応答を確認してください。マウスの遅延や画面のぼやけは、コンパイル性能やディスク性能の低下を意味するとは限りません。

    確認基準:文字が読みやすく、入力とウィンドウの移動に安定して反応する
  5. 05

    初回ログイン時の確認を実行する

    ターミナルを開き、システム時刻、ディスク空き容量、ネットワーク名前解決、Xcodeのコマンドラインパスを確認します。次に一時ディレクトリを作成し、書き込み、読み込み、削除のテストを行って、現在のユーザーがプロジェクトディレクトリに必要な権限を持っていることを確認します。

    確認基準:時刻、ディスク、ネットワーク、ディレクトリ権限がすべて正常
開発環境

バージョンとディレクトリを先に固定してから、プロジェクトの依存関係をインストールする

クラウドMacは専用物理マシンであり、仮想マシンではありません。チームでは環境設定を再現可能なチェックリストとして管理し、個人による手動変更が長期的に蓄積して元に戻せなくなる事態を防ぎましょう。

Xcode

プロジェクトで必要なツールチェーンのバージョンを固定する

まずプロジェクトのドキュメントとCI設定にあるバージョン要件を確認し、対応するXcodeを選択します。切り替え後は、コンパイラのパス、SDK一覧、コマンドラインツールも確認し、グラフィカルインターフェースのバージョンとターミナルで実際に使われるパスの不一致を防ぎます。

xcode-select -p
xcodebuild -version
xcrun --show-sdk-path

判定基準:ローカル開発と継続的インテグレーションで出力されるXcodeのメジャーバージョン、SDK、ツールパスが一致している。

Homebrew

Brewfileで再現可能な依存関係を管理する

インストール済みツールの一覧を個人の記憶だけに頼らないでください。まず現在の環境からBrewfileをエクスポートし、不要なパッケージを整理してから、クラウドMacに一覧どおりインストールします。プライベートソースのアクセストークンは、管理下にある環境変数から注入してください。

brew bundle dump --force
brew bundle check
brew bundle install

判定基準:Brewfileをクリーンなディレクトリで実行でき、機密トークンをリポジトリに書き込む必要がない。

Git

リポジトリのIDとプロジェクト権限を分離する

ユーザー名、コミット用メールアドレス、デフォルトブランチ、改行ルールを確認します。複数のプロジェクトで異なるリポジトリ権限を使う場合は、鍵ファイルとホストエイリアスを分けて設定し、1つの高権限認証情報ですべてのビルドタスクを処理しないでください。

git config --global --list
git remote -v
ssh -T git@your-git-host

判定基準:プル、コミット、サブモジュールへのアクセスでそれぞれ想定したIDを使用し、ログにトークンを出力しない。

署名とコマンドライン

機密情報をビルドプロセスの外部で管理する

証明書、秘密鍵、署名認証情報は、チームが承認した安全な手順でインポートし、プロジェクトごとに最小限のアクセス範囲を設定します。Node、Ruby、Python、CocoaPodsなどのツールはバージョンを固定し、バージョンファイルをリポジトリに含めてください。

node --version
ruby --version
python3 --version
pod --version

判定基準:新しいセッションでバージョンファイルから環境を復元でき、ビルドログに認証情報の内容が含まれていない。

CI/CD導入

クラウドMacを追跡可能な常駐ビルドノードとして運用する

GitLab CI Runnerを導入する際は、まずノードの役割を定義してからExecutorを登録します。1つのノードで複数のキューを処理できますが、高権限の署名タスクと通常のコンパイルタスクには異なるタグ、ディレクトリ、認証情報の範囲を設定してください。

登録

GitLab CI Runnerをインストールして登録する

プロジェクトまたはチームから割り当てられた登録情報を使用してインストールを完了します。アーキテクチャ、Xcodeのバージョン、タスク種別を示すタグをノードに設定し、タグなしタスクの受け入れを無効にして、任意のパイプラインがビルドノードを占有するのを防ぎます。

  • Runner名と所属プロジェクトを記録する
  • タグにツールチェーンとタスク種別を含める
  • 実行ユーザーのディレクトリ権限を確認する
常駐

常駐ビルドタスクを管理する

Runnerは管理下にあるバックグラウンドタスクとして実行し、再起動後に復旧できることを確認します。個人のターミナルセッションでビルドプロセスを長時間維持しないでください。セッションが切断されても、実行中のコンパイルやテストが中断されないようにします。

  • プロセス所有者と起動方法を確認する
  • 同時実行するタスク数を制限する
  • タイムアウトしたタスクの終了ルールを設定する
キャッシュ

キャッシュディレクトリと削除範囲を固定する

依存関係のキャッシュ、DerivedData、アーカイブ、最終成果物を分けて管理します。キャッシュは再利用できますが、アーカイブは追跡し、一時ファイルはパイプラインごとに削除します。ディスク使用量が急増した場合は、まずディレクトリを特定し、不明なプロジェクトデータを直接削除しないでください。

  • キャッシュと成果物のパスを分けて記録する
  • プロジェクトごとに独立したディレクトリを設定する
  • ディスク空き容量と増加元を定期的に確認する
分離

署名認証情報とリポジトリ権限を分離する

プロジェクトごとに最小限の権限を持つ認証情報を注入し、保護されたブランチだけが署名タスクを実行できるよう制限します。ログには認証情報の読み込み成否だけを記録し、パスワード、秘密鍵、トークン、署名関連ファイルの内容は出力しないでください。

  • 機密変数を保護し、ブランチを制限する
  • 通常のコンパイルと署名タスクでタグを分ける
  • タスク終了後に一時ファイルを削除する
導入時の検証

すべてのタスクを一度に移行せず、最小構成のパイプラインで検証する

  1. 機密データを含まないテストリポジトリを1つ取得する。
  2. Xcode、SDK、依存ツールのバージョンを出力する。
  3. 署名なしの最小ビルドを1回実行し、成果物を保存する。
  4. タスク終了後のキャッシュ、ログ、一時ディレクトリを確認する。
サービス稼働率

単発のネットワーク変動ではなく、統一指標でサービス状態を判断する

MacMLabクラウドMacのノードは365日、年間を通して正常稼働しています。接続品質は、ユーザーのローカルネットワーク、出口ポリシー、リモートデスクトップ設定、タスク負荷にも左右されます。トラブルシューティングでは、これらの要因とノード状態を分けて記録してください。

サービス稼働率指標
99.9%
観測期間
90

注文が適用条件を満たし、プラットフォームのサービス問題であることが確認された場合は、サービス規約と該当する注文記録に基づいて補償を処理します。

過去90日間の日次ステータス 日次記録は継続性の判断を補助するためのものです。現在の状態と注文情報は、コンソールから実際に返される内容を基準にしてください。
正常稼働の記録 過去の記録から最新の記録まで
トラブルシューティング決定木

現象から分岐し、一度に1つの変数だけを変更する

発生時刻と元のエラーを先に記録してから確認を行います。ツールの再インストール、ネットワークの切り替え、ディレクトリの削除を同時に行うと、復旧しても根本原因を特定できません。

開始

ノードへのリモート接続を確立できますか?

まずコンソールで注文状態、ノード地域、接続情報を確認し、下から現象に最も近い分岐を選択します。

接続できない

接続先が応答しない、または認証情報が拒否される

  1. 接続情報が現在の注文のものであることを確認する。
  2. ローカルネットワークを切り替え、プロキシを一時停止して再テストする。
  3. クライアントのエラー原文と発生時刻を記録する。

送信内容:注文番号、ノード地域、ローカルネットワークの種類、エラーのスクリーンショット、クライアント名。

応答が遅い

画面の遅延、入力の遅れ、タスクの速度低下

  1. リモートデスクトップの解像度と画質を下げる。
  2. デスクトップ画面の遅延とターミナルコマンドの所要時間を切り分ける。
  3. CPU、メモリ、ディスク、同時実行タスクを確認する。

送信内容:遅い操作の名称、開始・終了時刻、同時実行タスク数、匿名化したリソース概要。

ディスク容量

書き込みに失敗する、または空き容量が減り続ける

  1. プロジェクト、キャッシュ、アーカイブ、ログの各ディレクトリ容量を確認する。
  2. 失敗したタスクが一時ファイルを残していないか確認する。
  3. 再生成できるキャッシュだけを削除し、不明なデータは削除しない。

送信内容:ディスク空き容量、増加が最も速いディレクトリ、直近のタスク、削除前後の匿名化した結果。

ビルドに失敗する

コンパイラ、依存関係、署名処理でエラーが発生する

  1. Xcode、SDK、依存ツールのバージョンを記録する。
  2. クリーンなディレクトリで最小ビルドを再現する。
  3. ローカルとCIの環境変数名を比較する。

送信内容:失敗したコマンド、終了コード、最初に確認できた有効なエラー、匿名化した関連ログの一部。

ノード異常

複数の独立した操作が同時に失敗する

  1. 単一のリポジトリ、ツール、クライアントによる問題ではないことを確認する。
  2. ターミナルとグラフィカルインターフェースに共通する現象を記録する。
  3. 繰り返しの再試行を停止し、発生時の情報を保存する。

送信内容:注文番号、ノード地域、異常のタイムライン、影響範囲、最後に正常だった操作。

サポートへの連絡

技術的な問題はチケットを優先し、一般的な問い合わせはサポートメールへ

MacMLabが提供する連絡窓口は、コンソールチケットとサポートメールの2種類のみです。既存の注文、ノード、請求に関する事項は、注文記録と関連付けて対応状況を継続的に更新できるよう、チケットを優先して送信してください。

推奨ルート

コンソールにログインしてチケットを送信する

接続失敗、ノード異常、ビルド環境、請求状態、注文に関する問題に適しています。チケットにはまず結論を書き、その後に再現手順を時系列で記載してください。

件名の例 ノード地域 + 現象 + 初回発生時刻
本文の順序 注文番号 → 影響範囲 → 再現手順 → エラー原文 → 実施済みの確認
添付ファイルの要件 匿名化したスクリーンショットとログ概要だけをアップロードし、パスワード、秘密鍵、トークン、署名認証情報を隠す
コンソールにログインしてチケットを送信する
一般的な問い合わせ

サポートメールを送信する

注文前の構成確認、企業要件の相談、ドキュメントへのフィードバック、コンソールにログインできない場合に適しています。

support@macminilab.com
プライバシーに関する注意

サポート担当者が秘密情報を求めることはありません

システムパスワード、秘密鍵、アクセストークン、署名認証情報、完全な業務データを送信しないでください。ログにはエラーの前後関係を残しつつ、リポジトリのURL、ユーザー名、鍵の内容を置き換えてください。

データ処理に関する説明を見る

注文番号と再現手順を準備してから、サポートチームに引き継ぐ

注文済みの場合はコンソールからチケットを送信してください。モデル、利用期間、4地域のノードを検討中の場合は、2つのプランと料金体系を先に確認できます。