Per impostazione predefinita, Skaffold rileva automaticamente l'architettura del cluster di destinazione e crea un'immagine che corrisponde all'architettura della tua workstation, anche se l'architettura del cluster di destinazione è mista (sia x86 che Arm).
Puoi anche aggiungere una variabile di ambiente nel tuo IDE o un parametro nel file skaffold.yaml
che specifica per quale piattaforma eseguire la build, il che sostituisce il rilevamento automatico di Skaffold.
Specifica la piattaforma per cui creare le immagini
Se vuoi ignorare il rilevamento automatico di Skaffold durante la creazione dell'immagine, puoi specificare la piattaforma per cui vuoi creare le immagini nei seguenti modi:
- Aggiungi la variabile di ambiente
SKAFFOLD_PLATFORM
alle configurazioni del tuo IDE. - Aggiungi il parametro
platforms
al fileskaffold.yaml
.
Il seguente elenco mostra i valori possibili per la variabile di ambiente SKAFFOLD_PLATFORM
nel campo Variabili di ambiente del tuo IDE. Puoi utilizzare questi valori anche per
il flag --platform
nella tua CLI o il parametro platforms
nel
tuo file skaffold.yaml
:
x86 | Arm |
---|---|
amd64 |
aarch64 |
linux/amd64 |
linux/aarch64 |
Aggiungere variabili di ambiente alle configurazioni dell'IDE
Per aggiungere variabili di ambiente alle configurazioni di Cloud Code, segui questi passaggi:
Nel tuo IDE, fai clic su Esegui > Modifica configurazioni.
Nella scheda Esegui, nella sezione Impostazioni avanzate, inserisci la variabile di ambiente nel campo Variabili di ambiente.
Ad esempio:
SKAFFOLD_PLATFORM=linux/aarch64
In questo modo viene ignorato il rilevamento automatico di Skaffold e viene creata la build del tipo di immagine che hai specificato. Il file
skaffold.yaml
rimane invariato.
Aggiungere il parametro platforms al file skaffold.yaml
Per specificare la piattaforma per cui vuoi creare l'immagine, aggiungi il parametro platforms
al file skaffold.yaml
:
build:
platforms: ["linux/aarch64"]
artifacts:
- image: example
Per scoprire di più sul supporto di Cloud Code per Arm e per i cluster GKE con architettura mista, consulta Supporto di Arm.