【问题标题】:Can't run a container with a custom entrypoint script | Quarkus Jib无法使用自定义入口点脚本运行容器 |夸库斯臂
【发布时间】:2021-12-19 01:05:53
【问题描述】:

我正在尝试使用自定义入口点脚本在 AKS 上运行我的应用程序,但收到错误消息:

Error: failed to create containerd task: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "/docker/run-java.sh": permission denied: unknown

根据文档,我在 application.properties 中添加了条目

quarkus.jib.jvm-entrypoint=/docker/run-java.sh 
quarkus.jib.environment-variables."JAVA_APP_DIR"=/work 

我的自定义入口点脚本位于 src/main/jib/docker/

在 Maven Jib 插件中是一个设置额外目录权限的选项,但我在 Jib 的 Quarkus 扩展中没有看到它。

【问题讨论】:

  • 您能否验证在本地构建和运行映像时也会出现问题?如果是这样:我们可以删除azure-aks 标签。
  • run-java.sh 可执行吗?
  • 您可以使用github.com/wagoodman/dive检查它是否可执行
  • 假设脚本在那里(使用@geoand 建议的dive 验证)并且问题是它没有设置可执行权限位,解决方法是quarkus.jib.jvm-entrypoint=/bin/sh,/docker/run-java.sh(也假设/bin/sh 存在)。
  • run-java.sh 无法执行 (464)。 @ChanseokOh 感谢您的提示,我会检查它

标签: quarkus jib


【解决方案1】:

/bin/sh 运行我的脚本解决了我的问题。

quarkus.jib.jvm-entrypoint=/bin/sh,/docker/run-java.sh

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    • 2021-12-13
    • 2018-05-21
    • 2021-09-18
    • 1970-01-01
    相关资源
    最近更新 更多