4 votes

kubernetes jenkins commande docker introuvable

Installation de Jenkins à l'aide de helm

helm install --name jenkins -f values.yaml stable/jenkins

Plugin Jenkins installé

- kubernetes:1.12.6
- workflow-job:2.31
- workflow-aggregator:2.5
- credentials-binding:1.16
- git:3.9.3
- docker:1.1.6

Définition d'un pipeline Jenkins pour construire un conteneur Docker

node {
    checkout scm

    def customImage = docker.build("my-image:${env.BUILD_ID}")

    customImage.inside {
        sh 'make test'
    }
}

Lance l'erreur : docker introuvable

enter image description here

2voto

tibin tomy Points 121

Vous pouvez définir un agent pod avec des conteneurs et les outils nécessaires (docker, Maven, Helm, etc.) dans le pipeline :

1. créer agentpod.yaml avec les valeurs suivantes :

apiVersion : v1

genre : Cosse

métadonnées :

les étiquettes :

some-label: pod

spéc :

des conteneurs :

- name: maven

  image: maven:3.3.9-jdk-8-alpine

  command:

    - cat

  tty: true

  volumeMounts:

    - name: m2

      mountPath: /root/.m2

- name: docker

  image: docker:19.03

  command:

    - cat

  tty: true

  privileged: true

  volumeMounts:

    - name: dockersock

      mountPath: /var/run/docker.sock

volumes :

- name: dockersock

  hostPath:

    path: /var/run/docker.sock

- name: m2

  hostPath:

    path: /root/.m2
  1. Configurez ensuite le pipeline comme suit :

pipeline {

agent {

    kubernetes {

        defaultContainer 'jnlp'
        yamlFile 'agentpod.yaml'
    }
}
stages {
    stage('Build') {
        steps {
            container('maven') {
                sh 'mvn package'
            }
        }
    }
    stage('Docker Build') {

        steps {
            container('docker') {
                sh "docker build -t dockerimage ."
            }
        }
    }

}

1voto

Rohit Jindal Points 272

Il semble que vous n'ayez installé que des plugins, mais pas de paquets. Deux possibilités.

  1. Configurer les plugins pour installer les paquets en utilisant Jenkins.

    • Aller à Gérer Jenkins

    • Configuration globale des outils

    • Docker -> Nom de remplissage (ex : Docker-latest)

    • Cochez l'option d'installation automatique, puis ajoutez le programme d'installation (téléchargez à partir de aquí ). enter image description here

    • Sauvegarder ensuite

  2. Si vous avez installé Docker sur votre machine, mettez à jour la variable PATH dans Jenkins avec l'emplacement de Docker.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X