首页 > 解决方案 > ` docker-compose up ` 无效的服务名称 '.....' - 只允许使用 [a-zA-Z0-9\._\-] 字符

问题描述

我有一个具有 name 的本地 docker 映像img_test。我的docker-compose.yml文件是:

version: '2'

services:

   img_test:
      image: img_test:latest
      ports:
         - "8080:80"

   mysql:
      image: mysql:latest
      ports:
         - "3636:3036"

   nvidia/cuda:
      image: nvidia/cuda:latest
      runtime: nvidia
      command: nvidia-smi

networks:
   appnet:
      external: true

我也有Dockerfile。当我运行命令时docker-compose up,它会引发此错误。

ERROR: The Compose file './docker-compose.yml' is invalid because:
Invalid service name 'img_test' - only [a-zA-Z0-9\._\-] characters are allowed

我给了其他名称,例如img/testimgtest但它们不起作用。

我还尝试通过此命令构建Dockerfilein文件。docker-compose.yml

version: '2'

services:

   app:
      build: .

它给出了相同的错误app

解决办法是什么?我是新来的Docker。我测试了我的图像,它工作正常。我不想将我的图像推送到 Dockerhub。有没有其他方法可以解决这个问题?

标签: dockerdocker-composedockerfiledocker-machine

解决方案


这是一个相对较旧的 docker-compose 版本。他们过去有这个错误。尝试升级。

https://github.com/docker/compose/issues/4754


推荐阅读