docker - Cloud Build,maven 包,没有目标文件夹
问题描述
- name: 'gcr.io/cloud-builders/mvn'
args: ['clean',
'package',
'-Ddockerfile.skip',
'-DskipTests'
]
- name: 'gcr.io/cloud-builders/mvn'
args: ['dockerfile:build',
'-Ddockerfile.skip',
'-DskipTests'
]
当我在本地运行这两个命令时,我确实有带有docker文件夹的目标文件夹和其中的图像名称文件
在这一步它失败了:..
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
args:
- -c
- |
docker push $(cat /workspace/target/docker/image-name)
cat: /workspace/target/docker/image-name: 没有这样的文件或目录
我试过目标/码头,应用/目标/码头
在我的 Dockerfile 中:
...
WORKDIR /app
...
ADD target/${JAR_FILE} app.jar
...
问题:如何查看目标文件夹,如何使 docker push $(cat /workspace/target/docker/image-name) 工作?
解决方案
类似于这里的答案:Cloud Build failed to build the simple build step with maven
- 如何查看目标文件夹
- 目前没有办法检查目标文件夹的远程工作区,但您可以使用 cloud-build-local 进行调试并在本地编写工作区。
- https://cloud.google.com/cloud-build/docs/build-debug-locally
- https://github.com/GoogleCloudPlatform/cloud-build-local
- 确保 gcloudignore 或 gitignore 不会忽略 target/ 或 .jar 文件
我还想知道 docker 步骤是否没有了解 dockerfile 插件正在生成的内容, dockerfile:push 是否有效?
steps: - name: 'gcr.io/cloud-builders/mvn' args: ['dockerfile:build'] - name: 'gcr.io/cloud-builders/mvn' args: ['dockerfile:push']
推荐阅读
- javascript - 无法解析“../SecondApp\node_modules\react-navigation-stack\lib\module\navigators”中的“react-navigation”
- entity-framework - Dbcontext 处理异常 EF core 3.1
- database - 如何以标准化数据库形式存储用户的当前工作?(我正在使用 PostgreSQL)
- mongodb - 如何解决 mongodb compass for windows os 上的加载错误?
- javascript - Three.js 中我的精灵周围不需要的正方形
- arrays - 如何在scala中另一个列表的每个元素的末尾添加列表的每个元素?
- python - 如何修复我的 sqllite3 交互?
- hotchocolate - 查询 HotChocolate 时出现错误“ID `1` 的格式无效”
- css - 用于最后一个类型/最后一个孩子但不同父母的 CSS 选择器?
- python - paramiko.sftp.SFTPError:预期的属性