개발 환경 연결

Windows에서 Mac에 연결하기

VNC로 데스크톱을 보고, SSH로 빌드하세요.

Windows나 Linux에서 계속 코딩하세요. iOS 프로젝트를 컴파일할 때만 전용 macOS 환경으로 옮기면 됩니다.

주문이 있으신가요? 콘솔에 로그인한 뒤 인스턴스 상세 정보에서 연결 항목을 확인하세요. 비밀번호나 개인 키를 프로젝트 저장소에 넣지 마세요.

XCODEHOST / ACCESS 이용 기간에 맞춰 연결

연결 안내 카드 확인

콘솔에서 항목을 확인하고 연결 방식에 맞게 입력하세요.

VNC 데스크톱
주소 · VNC 포트 · 비밀번호
SSH 빌드
주소 · SSH 포트 · 사용자 이름 · 키
SFTP 전송
SSH 연결 정보 사용
.ipa

프로젝트 전송 → 빌드 및 내보내기 → 결과물 다운로드

작업별 연결

데스크톱·명령어·파일을 나눠 사용하세요

세 가지 방식으로 같은 컴퓨터에 연결하므로 작업마다 인스턴스를 따로 대여할 필요가 없습니다. 먼저 할 일을 정한 뒤 필요한 클라이언트를 실행하세요.

VNC로 데스크톱 확인

처음 환경을 확인하거나 Xcode 그래픽 인터페이스를 조작하고 서명 설정을 살펴볼 때 적합합니다. 클라이언트에 원격 macOS 데스크톱이 표시되며, 마우스와 키보드 입력은 클라우드 컴퓨터에서 처리됩니다.

처음에는 해상도를 낮게 설정하세요. 입력과 화면 표시, 연결이 안정적인지 확인한 다음 필요에 따라 화질을 조정하면 됩니다.

그래픽 작업

SSH로 빌드 실행

Flutter, React Native, Unity 프로젝트의 컴파일 명령을 실행하거나 로그를 확인할 때 적합합니다. 명령은 원격에서 실행되므로 데스크톱 화면을 계속 전송할 필요가 없습니다.

일반 SSH 세션이 끊기면 포그라운드 작업에 영향을 줄 수 있습니다. 오래 걸리는 빌드는 세션 유지 도구를 사용하거나 설정된 빌드 실행기에 맡기세요.

명령 실행

SFTP로 프로젝트 전송

소스 코드, 리소스, 설정 파일을 올리거나 빌드 로그와 .ipa를 내려받을 때 적합합니다. SFTP는 SSH 연결 정보를 사용하므로 VNC 포트를 입력하지 마세요.

처음 전송하기 전에 다시 생성할 수 있는 캐시를 정리하세요. 인증서와 개인 키는 따로 전송하고, 결과물을 다운로드한 뒤 파일 크기와 빌드 버전을 확인하세요.

프로젝트 전달

Windows 설정

VNC 항목 3개를 정확히 입력하세요

VNC 호환 클라이언트를 준비한 뒤 콘솔에서 인스턴스 상세 정보를 여세요. 연결 정보는 해당 인스턴스에 표시된 값을 기준으로 입력하세요. 주소를 추측하거나 기본 포트를 임의로 사용하지 마세요.

  1. 01

    주소 입력

    인스턴스 연결 주소를 클라이언트의 호스트 입력란에 입력하세요. 주소, 사용자 이름, 주문 번호는 서로 다른 항목입니다. 연결 안내 전체를 한꺼번에 붙여 넣지 마세요.

    클라이언트에서 주소와 포트를 한 입력란에 입력하도록 되어 있다면 먼저 요구되는 형식을 확인하세요. 콜론 표기 방식은 클라이언트마다 다르게 해석될 수 있습니다.

  2. 02

    포트 입력

    콘솔에 표시된 VNC 포트를 사용하세요. SSH와 VNC는 별도 서비스이므로 포트를 서로 바꿔 쓸 수 없습니다. 포트 입력란이 따로 있으면 해당 칸에 숫자를 입력하세요.

    연결 시간 초과가 발생하면 복사한 값에 공백이 들어갔는지, 현재 네트워크에서 해당 포트를 제한하는지, 인스턴스에 연결할 수 있는 상태인지 먼저 확인하세요.

  3. 03

    비밀번호 입력

    클라이언트 안내에 따라 해당 인스턴스의 VNC 비밀번호를 입력하세요. 콘솔 로그인 비밀번호를 대신 사용하지 말고, 공용 컴퓨터에 접속 정보를 저장하지 마세요.

    처음 데스크톱에 접속한 뒤 키보드 레이아웃과 시스템 시간을 확인하고 Xcode 및 명령줄 도구 버전을 점검하세요. 인증 정보에 문제가 있으면 지원 티켓을 제출하세요.

Linux 설정

공개 키를 등록한 뒤 세션을 시작하세요

SSH는 명령 실행에, VNC 클라이언트는 그래픽 작업에 사용합니다. 작업에 따라 두 방식을 전환할 수 있지만 각 방식의 인증 정보는 따로 확인해야 합니다.

키 안전하게 보관

사용 중인 Linux 컴퓨터에서 SSH 키를 생성하세요. 개인 키는 로컬에만 보관하고 공개 키만 원격 사용자의 인증 키 파일에 등록합니다. 로그인 설정을 위해 개인 키를 업로드하지 마세요.

ssh-keygen -t ed25519 -f ~/.ssh/xcodehost
chmod 600 ~/.ssh/xcodehost

승인된 세션이나 데스크톱을 통해 공개 키를 등록한 뒤 키 인증 로그인을 테스트하세요. 로그인이 확인되기 전에는 계속 사용할 수 있는 연결 방식을 종료하지 마세요.

호스트 확인

SSH에 처음 연결하면 호스트 지문을 확인하라는 메시지가 표시됩니다. 신뢰할 수 있는 경로로 지문을 확인한 뒤 승인하세요. 기존 기록과 달라졌다면 인스턴스가 재설치되었는지 먼저 확인하고 경고를 무시하지 마세요.

ssh -i ~/.ssh/xcodehost \
  -p "$SSH_PORT" \
  "$MAC_USER@$MAC_HOST"

명령에 사용된 환경 변수 3개를 콘솔에 표시된 SSH 포트, 시스템 사용자 이름, 연결 주소로 먼저 설정하세요. VNC 클라이언트에는 별도의 VNC 항목을 입력하면 됩니다.

빌드 실행

로그인부터 결과물 내보내기까지

아래는 명령과 예상 출력의 일부이며, 실제 온라인 실행 결과가 아닙니다. 예제에서는 프로젝트 Archive가 생성되어 있고, 서명 설정이 올바르며, fastlane 업로드 권한이 준비되어 있다고 가정합니다.

SSH / Archive / .ipa
$ ssh -i ~/.ssh/xcodehost -p "$SSH_PORT" "$MAC_USER@$MAC_HOST"
Last login: ...

$ xcodebuild -version
Xcode ...

$ xcodebuild -exportArchive \
  -archivePath build/App.xcarchive \
  -exportPath build/export \
  -exportOptionsPlist ExportOptions.plist
** EXPORT SUCCEEDED **

$ fastlane pilot upload --ipa build/export/App.ipa
Successfully uploaded package to App Store Connect
프로젝트 디렉터리, Archive 이름, 내보내기 설정 파일은 프로젝트에 맞게 수정하세요. 출력은 단계별 성공 여부를 확인하기 위한 예시이며, 실제 인스턴스에서 빌드나 업로드가 완료되었다는 뜻은 아닙니다.

환경부터 확인

다음 명령으로 xcodebuild -version 현재 도구 체인을 확인하세요. Flutter 프로젝트는 먼저 flutter doctor를 실행하세요. React Native 프로젝트는 의존성을 확인한 뒤 pod install을 실행하고, Unity 프로젝트는 내보낸 Xcode 프로젝트를 먼저 전송하세요.

결과물 확인

Archive가 성공해도 .ipa가 내보내진 것은 아니며, 내보내기에 성공해도 업로드까지 완료된 것은 아닙니다. 각 단계의 로그를 따로 보관하고 빌드 결과물을 다운로드하세요. 업로드 검증 오류가 발생하면 해당 오류가 난 단계부터 확인하면 됩니다. 원격 데스크톱을 다시 설정할 필요는 없습니다.

연결 지점 선택

작업 위치에 따른 왕복 지연 시간 확인

5개 노드 모두 데스크톱 작업, 빌드, 파일 전송에 사용할 수 있습니다. 참고 범위는 표에 표시된 권역 기준이며, 모든 도시에서 보장되는 값이나 실시간 측정값은 아닙니다.

노드별 지연 시간 참고치: 해당 권역을 기준으로 확인하고 실제 연결 네트워크에서 테스트하세요.
노드 서비스 권역 왕복 지연 시간 참고 범위 적합한 작업
싱가포르 동남아시아 20~50ms 권역 내 데스크톱 작업 · SSH 빌드 · 프로젝트 전송
도쿄 동아시아 30~60ms 권역 내 데스크톱 디버깅 · SSH 빌드 · 결과물 다운로드
서울 동북아시아 30~50ms 권역 내 원격 데스크톱 · 명령줄 빌드 · 파일 전달
홍콩 중국 남부 및 동남아시아 20~40ms 권역 내 데스크톱 작업 · SSH 빌드 · 프로젝트 업로드
미국 서부 북미 서부 25~35ms 권역 내 데스크톱 점검 · 자동 빌드 · 결과물 전송

표시된 범위는 참고용이며 실제 값은 연결 네트워크에 따라 달라집니다. 왕복 지연 시간은 파일 전송 속도와 다르므로 업로드나 컴파일 시간을 예측하는 데 사용할 수 없습니다.

Xcode 인터페이스를 자주 조작한다면 작업자의 위치와 가까운 권역을 우선 고려하세요. 무인 빌드를 주로 실행한다면 소스 코드와 결과물의 전송 경로도 고려해야 합니다. 실제 사용 가능 여부는 콘솔에 표시되는 실시간 상태를 확인하세요.

끊김 문제 해결

화면 전송량부터 줄이고 네트워크를 확인하세요

데스크톱 조작 지연, SSH 연결 실패, 파일 전송 지연은 서로 다른 문제입니다. 한 번에 한 가지씩 조정하고 조정 전후의 현상을 기록하세요.

  1. 01

    화질 낮추기

    먼저 원격 해상도와 클라이언트 화질을 낮추고 불필요한 데스크톱 애니메이션을 끄세요. 텍스트 입력이나 메뉴 열기 같은 짧은 작업으로 변화를 확인하세요. 개발용 데스크톱의 사용감을 확인하는 데 동영상 전체 재생은 적절하지 않습니다.

  2. 02

    명령으로 전환

    데스크톱이 단순 확인용이라면 컴파일은 SSH에서 실행하세요. 로그를 보관하고 의존성 설치, Archive, 내보내기를 단계별로 진행하세요. SSH는 정상인데 VNC가 끊긴다면 프로젝트를 수정하기보다 화면 전송부터 점검하세요.

  3. 03

    가까운 노드 선택

    참고 표를 보고 작업자와 가까운 노드를 선택한 뒤 로컬 무선 네트워크, 프록시, 대역폭 사용량도 확인하세요. 노드는 주문 시 설정합니다. 노드를 바꿔도 기존 프로젝트가 자동으로 이전되는 것은 아닙니다.

직접 만든 프로젝트로 연결 테스트

정식 빌드를 시작하기 전에 데스크톱, SSH, 파일 전송을 먼저 확인하세요. 이용 종료 전 프로젝트와 결과물을 다운로드하고 인증서와 키를 삭제하세요. 만료 후 갱신하지 않으면 이용이 중단됩니다.