Docker 如何命名存储库?

Sha*_*ser 2 docker dockerfile docker-compose

在名为ringeri的目录中,我创建了一个简单的 Dockerfile,它将安装一些东西并挂载我的应用程序......我从未明确设置名称。

然后我使用一个docker-compose.yml文件来定义web并将其指向Dockerfile我上面提到的。

当我运行时,docker images我看到以下内容:

$ docker images
REPOSITORY                     TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ringer_web                     latest              bf9b931e1030        8 minutes ago       938.9 MB
Run Code Online (Sandbox Code Playgroud)

看起来 Docker 在本地目录和图像名称之后命名了我的图像存储库......我的问题是,Docker 究竟如何选择命名图像存储库?(如果适用,为什么)

Abd*_*aly 6

文档

COMPOSE_PROJECT_NAME

设置项目名称,该名称位于 Compose 启动的每个容器的名称之前。默认为当前工作目录的基本名称。

顺便说一句,这不是docker,而是docker-compose决定名称。要更改它,请COMPOSE_PROJECT_NAME在运行前设置docker-compose

COMPOSE_PROJECT_NAME=myprefix docker-compose up
Run Code Online (Sandbox Code Playgroud)

  • 如果要使其持久化,请在同一文件夹中创建一个文件 `.env` 并将其设置在那里:`COMPOSE_PROJECT_NAME=myprefix` per https://docs.docker.com/compose/env-file/ (3认同)