Per impostazione predefinita, Skaffold rileva automaticamente l'architettura del cluster di destinazione e crea un'immagine corrispondente all'architettura della tua workstation, anche se l'architettura del cluster di destinazione è mista (sia x86 che Arm).
Hai anche la possibilità di aggiungere
nell'IDE o un parametro nel tuo
skaffold.yaml
che specifica la piattaforma su cui creare, eseguendo l'override.
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 modi seguenti:
- Aggiungi la variabile di ambiente
SKAFFOLD_PLATFORM
alle configurazioni dell'IDE. - Aggiungi il parametro
platforms
al fileskaffold.yaml
.
L'elenco seguente mostra i possibili valori per la variabile di ambiente SKAFFOLD_PLATFORM
nel campo Variabili di ambiente dell'IDE. Puoi utilizzare questi valori anche
il flag --platform
nell'interfaccia a riga di comando o il parametro platforms
nell'interfaccia a riga di comando
il 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:
Nell'IDE, fai clic su Esegui > Modifica configurazioni.
Nella scheda Esegui, sotto lo snippet Impostazioni avanzate, inserisci nel campo Variabili di ambiente.
Ad esempio:
SKAFFOLD_PLATFORM=linux/aarch64
Questa operazione sostituisce il rilevamento automatico di Skaffold e crea il tipo di immagine da te specificato. Il file
skaffold.yaml
rimane invariato.
Aggiungi il parametro platform al file skaffold.yaml
Per specificare la piattaforma per cui vuoi creare la tua immagine, aggiungi platforms
al tuo file skaffold.yaml
:
build:
platforms: ["linux/aarch64"]
artifacts:
- image: example
Per scoprire di più sul supporto di Cloud Code per ARM e cluster GKE con architettura mista, Assistenza di ARM.