在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
答案 0 :(得分:2)
您可以尝试使用“ container_name”参数(https://docs.docker.com/compose/compose-file/#container_name)来修复容器名称。如果您使用“比例”,则将无法使用。
您还可以使用链接为容器(https://docs.docker.com/compose/networking/#links)加上别名。
此致