无法使用 Jenkins CloudFoundryPlugin 将 docker 图像推送到 Cloud Foundry
Unable to push a docker image to Cloud Foundry using Jenkins CloudFoundryPlugin
我正在尝试使用 Cloud Foundry 插件将 docker 注册表映像推送到 CloudFoundry。应用程序在暂存步骤中失败。
我在 manifest.yml 文件中添加了注册表 url 和用户名,并在 cf 文档中提到的环境变量中提供了密码。
Jenkins 文件片段:
stage ('Dev_Deployment') {
steps{
sh 'export CF_DOCKER_PASSWORD=$USER_CREDENTIALS_PSW'
pushToCloudFoundry(
target: 'https://api.sys.dev.example.io',
credentialsId: 'pcfcreds',
organization: 'pcforg',
cloudSpace: 'pcfspace',
manifestChoice: [manifestFile: 'manifest.yml']
)
}
}
manifest.yml代码:
---
applications:
- name: App-1
memory: 1G
instances: 1
host: App-1
disk_quota: 1G
docker:
image: registry-dev.apps.dev.example.io/app-1
username: user1
我希望 docker 图像在 PCF 中部署为应用程序。
但是我在应用程序暂存中遇到错误
java.lang.IllegalStateException: Application SpringDemo-3 failed during staging
它实际上并不认为它是 docker 部署。相反,它会将其视为正常的应用程序部署并搜索构建包。
2019-07-08T19:23:14.80+0530 [STG/0] ERR None of the buildpacks detected a compatible application
是否有将安全注册表中的 docker 映像推送到 CloudFoundry 的示例管道?
我已经浏览了 Cloud Foundry Plugin Release Notes(直到版本 2.3.1),但我没有找到任何可以将 docker 图像推送到 Cloud Foundry 的功能。
因此,我找到了以下代码片段作为解决方法,其中使用 CF CLI 推送 docker 图像,而不是使用 Cloud Foundry 插件。
stage ('Dev_Deployment') {
steps{
sh 'pwd'
sh 'which cf'
sh 'cf --version'
sh 'cf login -a $CF_API_ENDPOINT -u $CF_CREDENTIALS_USER -p $CF_CREDENTIALS_PASSWORD'
sh 'cf t -o $CF_ORG -s $CF_SPACE'
sh 'CF_DOCKER_PASSWORD=$DOCKER_CREDENTIALS_PASSWORD cf push'
}
}
我正在尝试使用 Cloud Foundry 插件将 docker 注册表映像推送到 CloudFoundry。应用程序在暂存步骤中失败。
我在 manifest.yml 文件中添加了注册表 url 和用户名,并在 cf 文档中提到的环境变量中提供了密码。
Jenkins 文件片段:
stage ('Dev_Deployment') {
steps{
sh 'export CF_DOCKER_PASSWORD=$USER_CREDENTIALS_PSW'
pushToCloudFoundry(
target: 'https://api.sys.dev.example.io',
credentialsId: 'pcfcreds',
organization: 'pcforg',
cloudSpace: 'pcfspace',
manifestChoice: [manifestFile: 'manifest.yml']
)
}
}
manifest.yml代码:
---
applications:
- name: App-1
memory: 1G
instances: 1
host: App-1
disk_quota: 1G
docker:
image: registry-dev.apps.dev.example.io/app-1
username: user1
我希望 docker 图像在 PCF 中部署为应用程序。
但是我在应用程序暂存中遇到错误
java.lang.IllegalStateException: Application SpringDemo-3 failed during staging
它实际上并不认为它是 docker 部署。相反,它会将其视为正常的应用程序部署并搜索构建包。
2019-07-08T19:23:14.80+0530 [STG/0] ERR None of the buildpacks detected a compatible application
是否有将安全注册表中的 docker 映像推送到 CloudFoundry 的示例管道?
我已经浏览了 Cloud Foundry Plugin Release Notes(直到版本 2.3.1),但我没有找到任何可以将 docker 图像推送到 Cloud Foundry 的功能。
因此,我找到了以下代码片段作为解决方法,其中使用 CF CLI 推送 docker 图像,而不是使用 Cloud Foundry 插件。
stage ('Dev_Deployment') {
steps{
sh 'pwd'
sh 'which cf'
sh 'cf --version'
sh 'cf login -a $CF_API_ENDPOINT -u $CF_CREDENTIALS_USER -p $CF_CREDENTIALS_PASSWORD'
sh 'cf t -o $CF_ORG -s $CF_SPACE'
sh 'CF_DOCKER_PASSWORD=$DOCKER_CREDENTIALS_PASSWORD cf push'
}
}