docker - Docker 命令从 Docker run 成功运行,但在 Dockerfile 中使用 CMD 时没有
问题描述
我将 Bitnami/Keycloak-Gatekeeper Docker 映像包装在 Dockerfile 中,并尝试运行:
FROM bitnami/keycloak-gatekeeper:latest
COPY config.yml /opt/bitnami/keycloak-gatekeeper/config.yml
CMD ["/keycloak-gatekeeper --config /opt/bitnami/keycloak-gatekeeper/config.yml"]
这给出了一个错误:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "exec: \"/keycloak-gatekeeper --config /opt/bitnami/keycloak-gatekeeper/config.yml\": stat /keycloak-gatekeeper --config /opt/bitnami/keycloak-gatekeeper/config.yml: no such file or directory": unknown.
但是,当我使用 docker run 命令运行它时,一切都按预期执行。
docker run -v "config.yml:/opt/bitnami/keycloak-gatekeeper/config.yml" bitnami/keycloak-gatekeeper:latest /keycloak-gatekeeper --config /opt/bitnami/keycloak-gatekeeper/config.yml
为什么这直接通过 docker run 工作,而不是在 Dockerfile 中工作?
如何解决这个问题,以便我可以使用 Dockerfile 运行?
解决方案
CMD ["keycloak-gatekeeper", "--config", "/opt/bitnami/keycloak-gatekeeper/config.yml"]
推荐阅读
- javascript - 如何序列化包含 blob 图像的 FormData?
- javascript - innerHTML 创建一个新元素,而不是替换目标元素的 innerHTML
- dynamics-crm - 从 Dynamics CRM 2011 升级到 CRM 2016 后,表单和插件出现奇怪问题
- javascript - Vanilla JS 视差口吃
- python - 熊猫识别组中具有列值的第一行
- excel - AdvanceFilter 抛出 1004 错误,对象定义错误
- javascript - 在嵌套部分的航点上向前和向后更改滚动方向
- java - 使用 Nifi 预处理一个大文件
- c++ - 告诉我一种在 C++ 中对 char 向量进行排序的方法
- numpy - 计算 get_weights() 输出中非零元素数量的最快方法