Comment exécuter une image de menu fixe que j'ai créée localement sur Google Container Engine ?
Vous pouvez envoyer votre image dans Google Container Registry et les référencer à partir du manifeste de votre pod.
En supposant que vous avez un DOCKER_Host
correctement configuré, un cluster GKE exécutant la dernière version de Kubernetes et Google Cloud SDK installed.
Configurer des variables d'environnement
gcloud components update kubectl
gcloud config set project <your-project>
gcloud config set compute/zone <your-cluster-zone>
gcloud config set container/cluster <your-cluster-name>
gcloud container clusters get-credentials <your-cluster-name>
Marquez votre image
docker tag <your-image> gcr.io/<your-project>/<your-image>
Poussez votre image
gcloud docker Push gcr.io/<your-project>/<your-image>
Créez un manifeste de pod pour votre conteneur: my-pod.yaml
id: my-pod
kind: Pod
apiVersion: v1
desiredState:
manifest:
containers:
- name: <container-name>
image: gcr.io/<your-project>/<your-image>
...
Planifier ce pod
kubectl create -f my-pod.yaml
Répétez la procédure à partir de l'étape (4) pour chaque module à exécuter. Vous pouvez avoir plusieurs définitions dans un même fichier en utilisant une ligne avec ---
comme délimiteur.
Étape 1: Spécifiez le conteneur dans lequel vous devez travailler
gcloud container clusters get-credentials [$cluster_name]
Étape 2: Marquez l'image du menu fixe que vous souhaitez exécuter.
docker tag nginx gcr.io/first-project/nginx
Étape 3: pousser l'image
gcloud docker Push gcr.io/first-project/nginx
Étape 4: Créer le fichier Yaml (test.yaml)
apiVersion: v1
kind: Pod
containers:
- name : nginx1
image: gcr.io/first-project/nginx
Étape 5: Créer le pod
kubectl create –f test.yaml
Vous pouvez copier la clé d'authentification du registre de votre registre docker privé dans le fichier .dockercfg situé dans le répertoire racine des sbires juste avant de démarrer les modules ..__ ou d'exécuter la connexion à un docker avant de démarrer.
docker login --username=<> --password=<> --email=<> <DockerServer>
Faire référence à l'image du menu fixe privé dans la configuration du pod devrait alors fonctionner comme prévu.
La configuration que j’utilise consiste à déployer mon propre registre docker combiné avec le transfert de port ssh. À cette fin, j'ai configuré un serveur ssh dans le cluster et utilisé ~/.ssh/config
pour configurer un transfert de port vers le registre.
J'utilise aussi Jenkins pour construire les images directement dans le nuage.