我有一个场景,我在Minikube的K8s集群中运行我的Jenkins。我在Jenkins Pipeline中运行一个groovy脚本,它使用Kaniko构建Docker镜像(它构建一个没有Docker守护进程的Docker镜像)并推送到Azure容器注册表。我已经创建了Secret来向Azure进行身份验证。
但是当我输入一个图像时-我得到一个错误
" [36mINFO[0m[0004] Taking snapshot of files...
[36mINFO[0m[0004] ENTRYPOINT ["jenkins-slave"]
error pushing image: failed to push to destination Testimage.azurecr.io/test:latest: unexpected end of JSON input
[Pipeline] }"
字符串
我的剧本
My groovy script --
def label = "kaniko-${UUID.randomUUID().toString()}"
podTemplate(name: 'kaniko', label: label, yaml: """
kind: Pod
metadata:
name: kaniko
spec:
containers:
- name: kaniko
image: gcr.io/kaniko-project/executor:debug
imagePullPolicy: Always
command:
- /busybox/cat
tty: true
volumeMounts:
- name: jenkins-pv
mountPath: /root
volumes:
- name: jenkins-pv
projected:
sources:
- secret:
name: pass
items:
- key: .dockerconfigjson
path: .docker/config.json
"""
) {
node(label) {
stage('Build with Kaniko') {
git 'https://github.com/jenkinsci/docker-jnlp-slave.git'
container(name: 'kaniko', shell: '/busybox/sh') {
sh '''#!/busybox/sh
/kaniko/executor -f `pwd`/Dockerfile -c `pwd` --skip-tls-verify --destination=testimage.azurecr.io/test:latest
'''
}
}
}
}
型
您能帮助我们克服这个错误吗?还有:
- 我怎么知道惠子建立的形象的名字?
- 我只是推一样-registry.acr.io/test:最新的,可能是一个不正确的图像名称,这是我得到JSON输出错误的原因?
1条答案
按热度按时间q35jwt9p1#
字符串