Docker 服务可以有别名吗?

Docker 服务可以有别名吗?

我正在开发 Docker Swarm(Docker 1.13.0)。此 Swarm 中将运行多个环境(又称覆盖网络)。环境将是 或,test适用于给定的 Drupal 站点。stagingproduction

test我们传统上试图使配置在、staging和之间尽可能保持相似production。例如,用于访问 MariaDB(Drupal 使用)的主机名位于drupaldb这些环境中的任何一个中。

我们现在正在迁移到 Docker Swarm,但我们意识到服务名称必须是唯一的。服务名称也会成为主机名。这意味着我们只能使用drupaldb一次,否则就会遇到麻烦。

就我目前的知识而言,我们必须为每个环境使用不同的主机名。我找不到在 Docker 中为服务设置别名的方法,手动维护别名似乎违背了服务发现的整个目的。

看来我们必须使用诸如siteA_drupaldb_testsiteA_drupaldb_staging和 之类的服务名称siteA_drupaldb_prod。这很麻烦,而且意味着我们必须维护许多不同的配置文件,任何给定的 Drupal 站点都从这些配置文件启动。

有没有办法启动服务并为服务分配额外的别名和主机名?

相关内容