如何适应1.23版中的新子弹计数方案?

时间:2018-11-28 09:19:56

标签: docker docker-compose

docker compose的1.23.0版本中,容器命名方案已更改。

  

重要提示

     

此版本中Compose创建的容器的默认命名方案   已从project_service_index更改为   project_service_index_slug,其中slug是随机生成的   十六进制字符串。请确保依靠旧版本更新脚本   升级之前,请先命名方案。

每次我呼叫docker-compose up -d时,slug都是新生成的。

我的问题:在我的容器中,我有一个PowerShell脚本(build_container),该脚本在第二个容器(container_svn)上执行SVN操作。由于容器名称是SVN-URL的一部分,因此我的脚本已损坏。原因:旧的SVN-URL例如http://container_svn_1/repos。基于该错误更改,我的build_container无法再连接到container_svn_1,因为SVN容器似乎只能在container_svn_1_someRandomSlug下访问。

使用docker-compose <1.23.0能够通过

container_svn ping build_container
PS C:\> ping container_svn_1

现在使用docker-compose> 1.23.0,我必须使用:

PS C:\> ping container_svn_1_c298f27bdf5c

如何在container_svn中将“ container_svn_1_c298f27bdf5c”作为build_container的名称?可以通过环境变量注入名称吗?

Thx

1 个答案:

答案 0 :(得分:2)

您可以尝试使用“ container_name”参数(https://docs.docker.com/compose/compose-file/#container_name)来修复容器名称。如果您使用“比例”,则将无法使用。

您还可以使用链接为容器(https://docs.docker.com/compose/networking/#links)加上别名。

此致