从同一个docker-compose文件构建时的随机容器名称

Rey*_*rPM 6 docker docker-compose

我有以下docker-compose.yml文件:

version: '2'
services:
    php-apache:
        image: reynierpm/php55-dev
        ports:
            - "80:80"
        environment:
            PHP_ERROR_REPORTING: 'E_ALL & ~E_DEPRECATED & ~E_NOTICE'
        volumes:
            - ~/data:/data
Run Code Online (Sandbox Code Playgroud)

每次运行以下命令时,docker-compose up -d它都会一直创建一个具有相同名称的容器,例如php55devwork_php-apache_1,该文件所在的文件夹加上服务名称.例如:

[rperez@dev php55-dev-work] $ tree
.
??? composer.json
??? docker-compose.yml
??? Dockerfile
Run Code Online (Sandbox Code Playgroud)

有没有办法随机更改此名称?现在我想在同一个容器中测试另一个应用程序但是另一个实例,我唯一的解决方案就是将内容复制到另一个文件夹中.

什么是最好的解决方案?

Von*_*onC 3

由于container_name:您可以将其添加到 docker-compose.yml 中(自 PR 1711 起),一种可能的解决方法是:

  • 使用当前的docker-compose.yml模板:复制它并在新container_name: xxx指令中添加随机容器名称。
  • docker compose up在那个临时的上运行你的docker-compose.yml