Docker 命令 运行s 从 Docker 运行 成功执行,但在 Docker 文件中使用 CMD 时失败

Docker command runs successfully from Docker run, but not when using CMD in Dockerfile

我正在将 Bitnami/Keycloak-Gatekeeper Docker 图像包装在 Docker 文件中,并尝试 运行:

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 运行 命令时,一切都按预期执行。

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 运行 起作用,而不是在 Docker 文件中起作用?

如何解决这个问题,以便我可以 运行 使用 Docker 文件?

CMD ["keycloak-gatekeeper", "--config", "/opt/bitnami/keycloak-gatekeeper/config.yml"]