Par défaut, Skaffold détecte automatiquement l'architecture de votre cluster cible et crée une image correspondant à l'architecture de votre station de travail, même si l'architecture de votre cluster cible est mixte (x86 et Arm).
Vous pouvez également ajouter une variable d'environnement dans votre IDE ou un paramètre dans votre fichier skaffold.yaml
qui spécifie la plate-forme pour laquelle compiler, ce qui remplace la détection automatique de Skaffold.
Spécifier la plate-forme pour laquelle créer des images
Si vous souhaitez remplacer la détection automatique de Skaffold lors de la création de votre image, vous pouvez spécifier la plate-forme pour laquelle vous souhaitez créer des images de la manière suivante:
- Ajoutez la variable d'environnement
SKAFFOLD_PLATFORM
aux configurations de votre IDE. - Ajoutez le paramètre
platforms
à votre fichierskaffold.yaml
.
La liste suivante indique les valeurs possibles pour la variable d'environnement SKAFFOLD_PLATFORM
dans le champ Variables d'environnement de votre IDE. Vous pouvez également utiliser ces valeurs pour l'indicateur --platform
dans votre CLI ou le paramètre platforms
dans votre fichier skaffold.yaml
:
x86 | Arm |
---|---|
amd64 |
aarch64 |
linux/amd64 |
linux/aarch64 |
Ajouter des variables d'environnement aux configurations de votre IDE
Pour ajouter des variables d'environnement aux configurations de Cloud Code, procédez comme suit:
Dans votre IDE, cliquez sur Run > Edit Configurations (Exécuter > Modifier les configurations).
Dans l'onglet Run (Exécuter), sous l'extrait Advanced Settings (Paramètres avancés), saisissez votre variable d'environnement dans le champ Environment variables (Variables d'environnement).
Par exemple :
SKAFFOLD_PLATFORM=linux/aarch64
Cela remplace la détection automatique de Skaffold et crée le type d'image que vous avez spécifié. Votre fichier
skaffold.yaml
reste inchangé.
Ajouter le paramètre "platforms" à votre fichier skaffold.yaml
Pour spécifier la plate-forme pour laquelle vous souhaitez créer votre image, ajoutez le paramètre platforms
à votre fichier skaffold.yaml
:
build:
platforms: ["linux/aarch64"]
artifacts:
- image: example
Pour en savoir plus sur la compatibilité de Cloud Code avec les clusters GKE Arm et à architecture mixte, consultez la page Compatibilité avec Arm.