Erst verbinden, dann bauen

Vom Auftrag zum ersten
xcodebuild

Dieses Handbuch zeigt Ihnen, wie Sie Ihre Cloud-Mac-Workstation bedienen. Ziel ist es, in den ersten zehn Minuten die Verbindungsdaten abzurufen, sich per SSH anzumelden und die Umgebung zu prüfen. Wie lange Abhängigkeiten und der vollständige Build dauern, hängt vom Projekt ab.

Daten Ihrer Workstation abrufen

Nach der Aktivierung diese vier Angaben prüfen

Melden Sie sich in der Konsole an und öffnen Sie die Instanzdetails der entsprechenden Bestellung. Verbindungsadresse, Benutzername und Port richten sich nach den Angaben dieser Instanz. Verwenden Sie nicht die Bestellnummer als Benutzernamen.

Beispiel für Workstation-Daten · keine echten Zugangsdaten

Desk M4

Mac mini M4 · 16 GB Arbeitsspeicher · 256 GB SSD

Öffentliche IP
In den Instanzdetails ansehen und kopieren
Benutzername
Den von der Konsole zugewiesenen Namen verwenden
Initialpasswort
Nur in einer privaten Umgebung anzeigen, nicht in Logs einfügen
Öffentlicher SSH-Schlüssel
Den öffentlichen Schlüssel im entsprechenden Bereich der Konsole hochladen

Sie erhalten einen exklusiven physischen Mac

Desk M4 ist ein Cloud-Mac ohne Virtualisierung. Sie können sowohl die grafische macOS-Oberfläche als auch die Kommandozeile verwenden. Prüfen Sie zuerst den zur Bestellung gehörenden Knoten und anschließend die Verbindungsdaten, damit Sie nicht versehentlich die Adresse einer anderen Workstation in ein Skript eintragen.

Für den Einstieg empfiehlt sich SSH. Damit können Sie schnell prüfen, ob Adresse, Port und Authentifizierung funktionieren. Die grafische Oberfläche brauchen Sie für Systemeinstellungen und die Xcode-Konfiguration – als dauerhaften Einstiegspunkt für Builds ist sie nicht erforderlich.

  • Der private Schlüssel bleibt auf Ihrem eigenen Computer. Hochgeladen wird der öffentliche Schlüssel, der mit einem Typ wie ssh-ed25519 beginnt.
  • Übermitteln Sie Initialpasswörter, private Schlüssel und Passwörter von Signaturzertifikaten niemals über normale Logs.
  • Wenn die Verbindungsdaten noch nicht angezeigt werden, prüfen Sie den Bestellstatus in der Konsole. Raten Sie weder Adresse noch Benutzernamen.
Erste Verbindung

Per SSH anmelden und den Build starten

Ersetzen Sie die Beispiel-IP und den Benutzernamen unten durch die Angaben aus der Konsole.203.0.113.24 ist eine Beispieladresse aus dieser Dokumentation und kann nicht zum Verbinden mit Ihrer Workstation verwendet werden.

  1. 01

    Schlüssel erstellen

    Erstellen Sie lokal einen eigenen Schlüssel für die Workstation und schützen Sie ihn mit einer Passphrase. Wenn Sie bereits einen geeigneten Schlüssel haben, laden Sie einfach den zugehörigen öffentlichen Schlüssel hoch. Überschreiben Sie keine vorhandenen Dateien.

    ssh-keygen -t ed25519 -f ~/.ssh/minivps_workstation
    cat ~/.ssh/minivps_workstation.pub
  2. 02

    Fingerabdruck prüfen

    Beim ersten Verbindungsversuch wird der Fingerabdruck des Host-Schlüssels angezeigt. Vergleichen Sie ihn mit einer vertrauenswürdigen Quelle. Wenn die Konsole keinen Fingerabdruck bereitstellt, fragen Sie per Support-Ticket nach. Akzeptieren Sie ihn nicht allein deshalb, weil die Aufforderung erscheint.

    ssh -i ~/.ssh/minivps_workstation dev@203.0.113.24
  3. 03

    Umgebung prüfen

    Führen Sie die folgenden Befehle auf dem Remote-System aus, um Architektur, Pfad der Entwicklertools und Versionen zu prüfen. Wenn Ihr Projekt eine andere Xcode-Version benötigt, gleichen Sie die Versionen zuerst ab und installieren Sie danach die Projektabhängigkeiten.

    uname -m
    xcode-select -p
    xcodebuild -version
    sw_vers

Eine vollständige Sitzung richtig einordnen

Der folgende Ausschnitt zeigt nur das Format und ist kein Live-Ergebnis. Fingerabdruck, Dauer und Build-Logs variieren je nach Instanz und Projekt. Für einen erfolgreichen Upload benötigen Sie außerdem eigenes Signaturmaterial und gültige Veröffentlichungszugangsdaten.

dev@desk-m4-tokyo
$ ssh -i ~/.ssh/minivps_workstation dev@203.0.113.24
The authenticity of host '203.0.113.24' can't be established.
ED25519 key fingerprint is SHA256:…
Are you sure you want to continue connecting (yes/no/[fingerprint])?
yes
Warning: Permanently added '203.0.113.24' to the list of known hosts.

$ cd ~/work/App
$ xcodebuild -scheme App -destination 'generic/platform=iOS' archive
…
** ARCHIVE SUCCEEDED **

$ bundle exec fastlane beta
…
Successfully uploaded the new binary to App Store Connect
Successfully finished processing the build

Geben Sie yeserst ein, nachdem Sie den Fingerabdruck geprüft haben. Wenn eine Änderung des Host-Schlüssels gemeldet wird, prüfen Sie zunächst, ob das System neu installiert oder die Instanz ausgetauscht wurde. Löschen Sie nicht einfach alle Einträge in known_hosts um die Prüfung zu umgehen.

Erst die Fehlerquelle eingrenzen, dann die Konfiguration ändern
MeldungZuerst prüfenNächster Schritt
Connection timed outIP, SSH-Port, lokales Netzwerk und FirewallTesten Sie eine andere lokale Netzwerkverbindung. Wenn der Fehler weiterhin auftritt, reichen Sie ein Support-Ticket mit Verbindungszeitpunkt und Knoten ein.
Permission deniedBenutzername, hochgeladener öffentlicher Schlüssel und ausgewählter privater SchlüsselVerwenden Sie ssh -v um den Authentifizierungsablauf anzuzeigen. Entfernen Sie vertrauliche Informationen, bevor Sie Logs weitergeben.
Scheme not foundAktuelles Projektverzeichnis, Workspace und freigegebenes SchemeFühren Sie zuerst xcodebuild -listaus. Bei Projekten mit CocoaPods muss normalerweise ein Workspace angegeben werden.
Signing failedZertifikat und privater Schlüssel, Bereitstellungsprofil sowie Schlüsselbund-ZugriffsrechtePrüfen Sie die Signierung zunächst einmal in einer interaktiven Sitzung, bevor Sie sie in eine unbeaufsichtigte CI übernehmen.
Wenn Sie eine grafische Oberfläche brauchen

Remote-Desktop durch einen SSH-Tunnel leiten

SSH eignet sich für Befehle und Automatisierung, VNC für grafische Einstellungen und interaktive Aufgaben. Richten Sie zuerst SSH ein und leiten Sie anschließend den Bildschirmfreigabe-Port weiter. Machen Sie den VNC-Dienst nicht direkt aus dem öffentlichen Internet erreichbar.

Bildschirmfreigabe auf dem Remote-System prüfen

Prüfen Sie in den Systemeinstellungen, ob die Bildschirmfreigabe aktiviert ist und welche Benutzer darauf zugreifen dürfen. Berechtigen Sie nur die tatsächlich benötigten Benutzer. Je nach macOS-Version finden Sie die Einstellung an einer anderen Stelle.

Wenn der Dienst deaktiviert oder das Konto nicht berechtigt ist, wird auch bei erfolgreichem Tunnel kein Desktop angezeigt.

Weiterleitung lokal einrichten

Lassen Sie die SSH-Sitzung unten geöffnet. Das Beispiel leitet den lokalen Port 15900 an den entfernten Port 5900 weiter und lauscht nur auf der Loopback-Adresse dieses Computers.

Verwendet Ihre Instanz einen anderen SSH-Port, ergänzen Sie den Befehl um -p und den in der Konsole angegebenen Port.

Lokalen Zugang verbinden

Auf einem Mac können Sie die Bildschirmfreigabe verwenden, auf anderen Systemen einen kompatiblen VNC-Client. Als Ziel geben Sie die lokale Adresse und den weitergeleiteten Port an, nicht die öffentliche IP des Remote-Systems.

Für die Anmeldung im Client benötigen Sie weiterhin ein berechtigtes Konto auf dem Remote-System.

ssh -N -L 127.0.0.1:15900:127.0.0.1:5900 \
  -o ExitOnForwardFailure=yes \
  -i ~/.ssh/minivps_workstation dev@203.0.113.24

Verbindungsadresse für den Client:vnc://127.0.0.1:15900. Wenn Sie die Tunnel-Sitzung beenden, wird diese Verbindung unterbrochen. Der Tunnel ist kein dauerhaft verfügbarer öffentlicher Dienst.

Erst die Bildqualität reduzieren, dann das Netzwerk prüfen

Beginnen Sie mit 1440 × 900 Pixeln und einem Bildschirm. Das ist eine Empfehlung zur Fehlersuche im Client, keine Einschränkung des Tarifs. Deaktivieren Sie dynamische Hintergrundbilder und nicht benötigte Vorschauen. Für Dateiübertragungen können Sie SSH verwenden. Mehr Bandbreite bedeutet nicht automatisch eine geringere Eingabeverzögerung: Auch Latenz, Paketverlust und Ihr lokales WLAN spielen eine Rolle.

Wenn Befehle normal reagieren, die Anzeige aber langsam ist, verringern Sie zunächst die Bildqualität oder Auflösung im Client. Wenn SSH und Bildschirm gleichzeitig die Verbindung verlieren, notieren Sie Zeitpunkt, Art des lokalen Netzwerks und die Meldung im Client. Reichen Sie dann ein Support-Ticket zum Verbindungsproblem ein.

Wiederkehrende Aufgaben auslagern

Erst einen Job testen, dann in die Hauptpipeline aufnehmen

Registrieren Sie die Workstation in Ihrem eigenen CI-Projekt. Die Registrierungsparameter rufen Sie jeweils im Projekt oder in der Verwaltungsoberfläche der Plattform ab. Verwenden Sie niemals das Token einer anderen Person und speichern Sie Registrierungstoken nicht im Code-Repository.

GitHub Actions

Wählen Sie in den Runner-Einstellungen des Repositorys oder der Organisation macOS und ARM64 aus. Laden Sie anschließend den selbst gehosteten Runner mit den aktuellen Installationsbefehlen auf der Seite herunter und richten Sie ihn ein.

Fügen Sie bei der Konfiguration desk-m4 als Anwendungs-Label hinzu. Führen Sie zunächst interaktiv einen Diagnosejob aus und registrieren Sie den Runner anschließend gemäß den Anweisungen des Installationspakets als Hintergrunddienst für den aktuellen Benutzer.

Verwenden Sie self-hosted,macOS,ARM64 und ein benutzerdefiniertes Anwendungs-Label, um den Runner gezielt auszuwählen.

GitLab Runner

Installieren Sie den Runner, erstellen Sie anschließend einen Runner für Ihr Projekt oder Ihre Gruppe und rufen Sie das Authentifizierungstoken ab. Wählen Sie bei der Registrierung eine passende Ausführungsart. Für native macOS-Builds können Sie mit dem Shell-Executor beginnen.

Nehmen Sie nur Jobs aus vertrauenswürdigen Projekten an und legen Sie macos-arm64 sowie ein Anwendungs-Label fest. Ob Jobs ohne Labels angenommen werden, sollten Sie ausdrücklich konfigurieren.

Prüfen Sie die Registrierung zuerst mit gitlab-runner verify und sehen Sie sich anschließend das Log des ersten Jobs an.

Jenkins Agent

Erstellen Sie in Ihrer Jenkins-Steuerung einen festen Knoten und legen Sie Remote-Arbeitsverzeichnis, Anzahl der Executoren und Labels fest. Binden Sie ihn über SSH oder den auf der Knotenseite angegebenen Agent-Startbefehl ein.

Achten Sie darauf, dass Benutzer, Java-Version und Kommandozeilenumgebung übereinstimmen. Lassen Sie den ersten Job nur die Tool-Versionen ausgeben. Verwenden Sie nicht gleich den Veröffentlichungsprozess als Verbindungstest.

Beginnen Sie mit einem Executor und erhöhen Sie die Parallelität erst, wenn Sie die Spitzenwerte für Arbeitsspeicher und Speicherplatz kennen.

Labels für Fähigkeiten, nicht für temporäre Zustände

Empfohlen werden das Architektur-Label macos-arm64, das Anwendungs-Label ios-buildund desk-m4 zur Kennzeichnung dieser Workstations. Knoten- oder Versions-Labels sollten Sie nur hinzufügen, wenn Jobs tatsächlich einer bestimmten Umgebung zugewiesen werden müssen. Werden die Labels zu kleinteilig, findet sich am Ende kein passender Rechner mehr.

name: workstation-check
on: workflow_dispatch
jobs:
  check:
    runs-on: [self-hosted, macOS, ARM64, desk-m4]
    steps:
      - name: Check toolchain
        run: |
          uname -m
          xcodebuild -version
          df -h

Ein selbst gehosteter Runner führt Code aus dem Repository aus. Lassen Sie keine nicht vertrauenswürdigen externen Beiträge auf eine Workstation mit Signaturmaterial zugreifen. Trennen Sie Build- und Veröffentlichungsrechte, stellen Sie Geheimnisse über die geschützten Variablen Ihrer CI bereit und beschränken Sie den Zugriff auf bestimmte Branches.

Die gewohnte Umgebung übernehmen

Daten, Toolchain und Scheduling in drei Schritten migrieren

Kopieren Sie nicht einfach das gesamte Benutzerverzeichnis. Migrieren Sie zunächst ein Projekt und halten Sie die reproduzierbaren Abhängigkeiten fest. Erst danach wechseln Sie die CI-Labels. Jeder Schritt lässt sich einzeln prüfen und bei Bedarf rückgängig machen.

01 · Daten

Erst das Projekt synchronisieren, dann Signaturmaterial importieren

Synchronisieren Sie das Arbeitsverzeichnis lokal mit rsync und schließen Sie Build-Artefakte aus. Exportieren Sie Zertifikate zusammen mit dem privaten Schlüssel in eine passwortgeschützte Datei; das Bereitstellungsprofil wird separat übertragen. Löschen Sie temporäre Kopien nach dem Import und der Prüfung.

rsync -av \
  --exclude DerivedData \
  --exclude build \
  -e "ssh -i ~/.ssh/minivps_workstation" \
  ./App/ dev@203.0.113.24:~/work/App/

Ergebnis: Alle Projektdateien sind vorhanden, und Zertifikat sowie privater Schlüssel für die Signierung liegen zusammen vor.

02 · Toolchain

Abhängigkeiten anhand einer Liste abgleichen

Exportieren Sie lokal eine Brewfile und prüfen Sie sie auf dem Remote-System, bevor Sie die Pakete installieren. Richten Sie die von Ihrem Projekt benötigte Xcode-Version ein und wählen Sie eine installierte Version mit xcodes aus. Prüfen Sie anschließend Ruby, Bundler und die Lockdatei des Projekts.

brew bundle dump --file=Brewfile
brew bundle --file=Brewfile
xcodes installed
xcodes select
xcodebuild -version

Ergebnis: Die Versionen der Entwicklertools entsprechen den Projektanforderungen, und die Abhängigkeiten lassen sich reproduzierbar installieren.

03 · CI-Anbindung

Zum Schluss die Scheduling-Labels ändern

Lassen Sie die bestehende Pipeline zunächst unverändert und fügen Sie einen manuell gestarteten Prüfjob hinzu. Stellen Sie sicher, dass er auf das Projekt zugreifen, signieren und Artefakte hochladen kann. Weisen Sie erst dann den regulären Job über runs-on oder Knoten-Labels der neuen Workstation zu.

cd ~/work/App
bundle install
xcodebuild -list
bundle exec fastlane beta

Ergebnis: Ein vollständiger Job läuft erfolgreich durch, das Artefakt lässt sich abrufen und Fehler sind anhand der Logs auffindbar.

Dies ist eine empfohlene Migrationsreihenfolge, keine feste Zeitangabe. Die Installation von Abhängigkeiten, SDK-Downloads und die Projektgröße beanspruchen beim ersten Durchlauf meist mehr Zeit als die SSH-Anmeldung. Beginnen Sie mit einem Build ohne Veröffentlichung.

Experimente jenseits des Build-Prozesses

Erst die Umgebung isolieren, dann Modellgewichte herunterladen

Desk M4 bietet 16 GB Unified Memory, den sich System, grafische Oberfläche und Modell teilen. Ob ein Modell ausgeführt werden kann, hängt auch von Quantisierung, Kontextlänge und Parallelität ab. Eine zusätzliche SSD schafft mehr Speicherplatz, aber keinen zusätzlichen Arbeitsspeicher.

MLX: separate Python-Umgebung

Installieren Sie MLX und die Inferenz-Tools in einer virtuellen Umgebung, damit Sie das System-Python nicht verändern. Prüfen Sie zuerst, ob sich das Modul importieren lässt, und wählen Sie danach ein passendes Modell samt Quantisierung.

python3 -m venv ~/venvs/mlx
source ~/venvs/mlx/bin/activate
python -m pip install -U pip
python -m pip install mlx mlx-lm
python -c "import mlx.core as mx; print(mx.default_device())"

Beginnen Sie mit einem kleinen Modell, kurzem Kontext und einer einzelnen Anfrage. Erhöhen Sie die Last erst, nachdem Sie die Arbeitsspeicherauslastung geprüft haben.

llama.cpp: Modellgewichte explizit angeben

Installieren Sie das Tool mit Homebrew und starten Sie es anschließend mit einer lokalen GGUF-Datei. Legen Sie den Beispielpfad zuerst an und speichern Sie dort eine tatsächliche Modelldatei. Die Parameter richten sich nach der Hilfe der installierten Version.

brew install llama.cpp
llama-cli --help
llama-cli \
  -m /Volumes/WorkSSD/models/model.gguf \
  -p "Hello" -n 64

Die GGUF-Datei muss mit der gewählten Modellarchitektur und dem Quantisierungsformat kompatibel sein.

Ollama: Zugriff zunächst auf den lokalen Rechner beschränken

Binden Sie den Dienst nach der Installation an die lokale Adresse und laden Sie die Gewichte gemäß den Angaben zur jeweiligen Modellquelle herunter. Wenn Sie von Ihrem lokalen Computer darauf zugreifen möchten, verwenden Sie vorzugsweise eine SSH-Portweiterleitung, statt die Inferenzschnittstelle direkt freizugeben.

brew install ollama
OLLAMA_HOST=127.0.0.1:11434 \
OLLAMA_MODELS=/Volumes/WorkSSD/models/ollama \
ollama serve

Beachten Sie die jeweiligen Lizenzen für den Download und die Nutzung der Modelle. Ein gestarteter Dienst bedeutet nicht, dass die Gewichte bereits bereitstehen.

Einheitlichen Speicherort für Modellgewichte festlegen

Im Folgenden steht /Volumes/WorkSSD für eine korrekt eingebundene zusätzliche SSD:models enthält Modellgewichte,cache enthält neu erstellbare Caches. Dies ist nur ein Beispielpfad; das System verwendet diesen Laufwerksnamen nicht automatisch. Prüfen Sie zuerst, ob das Laufwerk eingebunden und das Verzeichnis beschreibbar ist. Erstellen Sie anschließend die Verzeichnisse. Andernfalls könnten große Dateien versehentlich auf dem Systemlaufwerk landen.

diskutil info /Volumes/WorkSSD
test -d /Volumes/WorkSSD && test -w /Volumes/WorkSSD
mkdir -p /Volumes/WorkSSD/models /Volumes/WorkSSD/cache
export HF_HOME=/Volumes/WorkSSD/cache/huggingface
Erst das Laufwerk prüfen, dann schreiben

Mehr Speicherplatz durch Erweiterung, aber kein gemeinsamer Arbeitsspeicher bei mehreren Rechnern

Als Erweiterungen stehen eine SSD mit +1TB, eine SSD mit +2TB und eine Verbindung mehrerer Rechner über Thunderbolt 5 zur Verfügung. Laufwerksname, Gerätekennung und Verbindungsdaten richten sich nach den Angaben Ihrer Instanz. Übernehmen Sie nicht einfach die Gerätekennung eines anderen Systems.

Zusätzliche SSD erkennen

Listen Sie zuerst die externen physischen Laufwerke auf und prüfen Sie anschließend Volume-Name, Kapazität und verfügbaren Speicherplatz. Die folgenden Befehle lesen nur Informationen aus und formatieren keine Festplatte.

diskutil list external physical
ls /Volumes
df -h
diskutil info /Volumes/WorkSSD

Verschieben Sie Modelle, Build-Caches oder Projekte erst, nachdem Sie die Einbindung geprüft haben. Beenden Sie vor der Migration Build-Prozesse, die in die betreffenden Verzeichnisse schreiben, und behalten Sie eine separate Sicherungskopie.

Führen Sie eraseDisk oder andere Löschbefehle nicht unbedacht aus. Wenn das Laufwerk nicht angezeigt wird, reichen Sie ein Support-Ticket mit den Ergebnissen der schreibgeschützten Prüfung ein.

Grenzen mehrerer verbundener Rechner verstehen

Eine Verbindung mehrerer Rechner über Thunderbolt 5 ist für Workflows mit konkretem Bedarf an Kommunikation oder Datenübertragung zwischen Geräten gedacht. Jeder Rechner bleibt ein eigenständiges System mit eigenem Betriebssystem, eigenen Aufgaben und eigenem Arbeitsspeicher.

system_profiler SPThunderboltDataType
networksetup -listallhardwareports
ifconfig

Erkannte Schnittstellen bedeuten nicht, dass Anwendungen bereits verteilt ausgeführt werden können. Netzwerk, Übertragungsprotokoll und Aufgabenverteilung müssen Sie selbst konfigurieren. Klären Sie vor der Bestellung, welche Verbindung und Kombination tatsächlich verfügbar ist.

Mehrere verbundene Rechner werden nicht automatisch zu einem Mac mit größerem Arbeitsspeicher und beschleunigen Builds nicht zwangsläufig.

Beim Migrieren von Caches zwischen neu erstellbaren und unersetzlichen Daten unterscheiden

DerivedData und heruntergeladene Abhängigkeiten lassen sich neu erstellen. Nicht gespeicherte Änderungen am Quellcode, private Signaturschlüssel und Versuchsergebnisse dagegen nicht. Verwalten Sie beide Datentypen getrennt und sichern Sie zuerst die unersetzlichen Inhalte. Exportieren Sie Projekte, Artefakte und Konfigurationen, die Sie behalten möchten, selbst vor einer Verlängerung oder dem Ablauf. Betrachten Sie das Laufwerk der Workstation nicht als einzige Sicherung.

Problem verständlich weitergeben

Wenn Sie nicht weiterkommen: Diese vier Angaben helfen uns

Bei Problemen mit einer Instanz melden Sie sich vorzugsweise in der Konsole an und reichen Sie ein Support-Ticket ein. So lässt es sich der Bestellung zuordnen. Wenn Sie sich nicht anmelden können, Beratung vor dem Kauf benötigen oder weitere Angaben machen möchten, schreiben Sie an support@macminivps.com.

  • Bestellnummer und Knoten: Geben Sie an, um welche Workstation es geht. Senden Sie keine Passwörter oder privaten Schlüssel.
  • Zeitpunkt und Zeitzone: Nennen Sie, wann das Problem zum ersten Mal auftrat und ob es sich zuverlässig reproduzieren lässt.
  • Ausschnitt der ursprünglichen Fehlermeldung: Fügen Sie den Befehl, den Exit-Code und relevante Logzeilen bei. Entfernen Sie Token, Zertifikatsinhalte und personenbezogene Daten.
  • Bereits durchgeführte Prüfungen: zum Beispiel ein anderes lokales Netzwerk, den SSH-Port oder einen einzelnen Build testen.

Antwortzeiten

Wir geben keine unbestätigten durchschnittlichen Antwortzeiten oder festen Supportzeiten an. Maßgeblich sind die Angaben auf der Kontaktseite und die tatsächlichen Antworten im Support-Ticket. Ergänzen Sie Ihre Angaben am besten im bestehenden Ticket, statt denselben Fall mehrfach zu melden – so lässt er sich leichter nachverfolgen.

Wenn das Problem die Verbindung betrifft, geben Sie an, ob SSH und VNC gleichzeitig ausfallen. Betrifft es nur den Build, schreiben Sie dazu, ob derselbe Befehl in einer interaktiven Sitzung erfolgreich läuft. So können wir Netzwerk, Authentifizierung, Umgebung und Projekt zunächst getrennt betrachten.

Ablauf verstanden?
Dann richten Sie eine Workstation für Ihr Projekt ein

Desk M4 ist ein exklusiver physischer Mac mini, keine virtuelle Maschine. Prüfen Sie zunächst die benötigte Xcode-Version, Laufzeit und Speicherkapazität Ihres Projekts. Danach können Sie die Bestellung konfigurieren. Die Verfügbarkeit wird in Echtzeit in der Konsole angezeigt.

Als Zahlungsmethoden werden ausschließlich USDT-TRC20 oder Visa / Mastercard / Amex (über Stripe) unterstützt. Abgerechnet wird in US-Dollar. Welche Zahlungsanbieter tatsächlich verfügbar sind, entscheidet die Antwort des Backends.