Cmd好玩的指令:CMD指令中是否允许DockerARG

我有一个 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

然而,对于CMDARG似乎没有得到扩展。在 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}]}
144

问题是args只能在构建时使用,而CMD在运行时执行。我想现在实现你想要的唯一方法是在 Dockerfile 中设置一个环境变量MASTER_NAME值。

ARG MASTER_NAME
ENV MASTER_NAME ${MASTER_NAME}
CMD spark-submit --deploy-mode client --master ${MASTER_NAME}

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(528)
怎么把软件从c盘移到d盘:使用labview实时模块捕获D盘中的.txt文件
上一篇
C Event:C# 事件继承(one x event)
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(60条)