我有一个 Dockerfile,其中ARG
用于CMD
指令:
ARG MASTER_NAME
CMD spark-submit --deploy-mode client --master ${MASTER_URL}
arg 通过 docker-compose 传递:
spark:
build:
context: spark
args:
- MASTER_URL=spark://master:7077
然而,对于CMD
,ARG
似乎没有得到扩展。在 Idocker-compose up
之后。
以下是检查显示的内容:
docker inspect -f "{{.Name}} {{.Config.Cmd}}" $(docker ps -a -q)
/spark {[/bin/sh -c spark-submit --deploy-mode client --master ${MASTER_URL}]}
问题是args
只能在构建时使用,而CMD
在运行时执行。我想现在实现你想要的唯一方法是在 Dockerfile 中设置一个环境变量MASTER_NAME
值。
ARG MASTER_NAME
ENV MASTER_NAME ${MASTER_NAME}
CMD spark-submit --deploy-mode client --master ${MASTER_NAME}
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(60条)