我正在尝试制作一个 jenkins pipline,它从 git 克隆代码并构建一个 docker 映像,然后将其推送到 nexus 注册表,这就是我的 jenkins 文件中的内容:
pipeline{
agent any
environment{
DOCKERHUB_CREDENTIALS=credentials('docker_hub')
NEXUS_CREDENTIALS = credentials('nexus')
}
stages{
stage('Build'){
steps{
sh 'docker build -t my-app .'
}
}
stage('Login'){
steps{
sh 'echo $NEXUS_CREDENTIALS_PSW | docker login -u $NEXUS_CREDENTIALS_USR --password-stdin http://localhost:8095/repository/docker-private-repo/'
}
}
stage('Push'){
steps{
sh 'docker tag my-app:latest http://localhost:8095/docker-private-repo/my-app:latest'
sh 'docker push http://localhost:8095/docker-private-repo/my-app:latest'
}
}
}
post{
always{
sh 'docker logout'
}
}
}
Run Code Online (Sandbox Code Playgroud)
对于使用管道 SCM 克隆 git 代码,无论如何,构建阶段和登录阶段工作正常,但对于推送阶段,我收到此错误“错误解析参考:”http://localhost:8095/docker-private-repo/my -app:latest"不是有效的存储库/标签:无效的参考格式"我不知道标签命令有什么问题?我该如何解决这个问题?