将parameter passing给泊坞窗图像上的应用程序

我环顾四周,我看到了一些Docker容器上运行HelloWorld的简单示例,如下所示: http : //dotnet.dzone.com/articles/docker-%E2%80%98hello-world-mono

在Dockerfile的最后,作者调用:

CMD ["mono", "/src/hello.exe"] 

我们要做的是在构build我们的控制台应用程序时有一个可重用的图像。 把它放在一个使用Dockerfile的docker镜像上。 这部分对我来说是有意义的。 但是,我希望能够通过ConsoleApp参数。 那可能吗?

例如,

 sudo docker run crystaltwix/helloworld -n "crystal twix" 

其中-n是我在helloworld应用程序中定义的一个参数。

您可以使用ENTRYPOINT foo而不是CMD foo来实现此目的。 docker run后的所有参数都传递给foo。

@ seanmcl的答案是最简单的…如果您必须传递应用程序密钥这样的秘密值,您可能不得不担心将它们暴露给进程列表….因此,您可以使用应用程序在启动过程中查找的环境variables:

 SECRET_KEY="crystal twix" docker run -e APP_KEY=$SECRET_KEY crystaltwix/helloworld