如何使用同一张图片运行两个组件,将两个不同的参数传递给docker-compose

时间:2019-07-30 18:43:25

标签: docker docker-compose

我想使用docker-compose启动两个服务,使用同一图像将两个不同的参数传递给同一图像,这些参数分别带有eth和btc值。 jar需要一个带有这两个值之一的参数。

服务为demo-quartz-btc和demo-quartz-eth。

当我启动docker-compose时,我可以在日志中看到以下消息:

fill_value=0

这是显示docker-compose.yml的link

这是显示Dockerfile的link

我遵循了link的解决方案,但是对我来说不起作用。另外,我followed提供了官方帮助,但无效。

Docker引擎版本为18.09.2,撰写版本为1.23.2。

有人可以帮助我吗?我在做什么错了?

编辑

我在日志中看到没有使用docker-compose up来应用任何参数。是否有建议的方法来运行需要运行其他服务的两个服务,例如zookeeper,kafka,Eureka或其他?

编辑1

好吧,现在我知道可以使用将参数传递给容器的entry-point.sh脚本文件通过服务运行容器。现在,¿我如何使用docker-compose up命令执行相同操作?我需要在同一过程中运行的所有服务/容器。

编辑2

我是否必须在脚本文件中放入必要的docker run -it命令以使一切正常运行?

df2['B'] -= df2.A.map(df1.set_index('A').B).fillna(0)

1 个答案:

答案 0 :(得分:0)

解决方案是拥有两个Dockerfile文件,每个文件都有一个entry-point.sh文件,每个文件都包含您需要的参数。我意识到我必须适应Docker / Kubernetes希望您工作的方式,而不是相反。