错误消息:

/opt/jenkins/workspace/solo@tmp/durable-786eecc5/script.sh: line 1: docker: command not found

使用docker pipeline插件构建镜像时的报错:

stage("dockerbuild"){
	steps{
		script{
			def app
			node{
				stage("build image"){
					app = docker.build("solo:${env.dockerTag}")
				}
			}
		}
	}
}

解决方法:

        原因是我的jenkins集成了多个构建节点,主节点安装了docker,salve节点没有安装docker,只需要在从节点安装docker即可。


错误信息:jenkins运行docker权限问题。

+ docker build -t solo:0.1 .
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.24/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&shmsize=0&t=solo%3A0.1&target=&ulimits=null&version=1: dial unix /var/run/docker.sock: connect: permission denied

解决方法:

需要将jenkins用户添加到docker用户组中:

usermod -aG docker jenkins

需要重启节点。