如何使用docker compose构建docker映像
假设我有一个docker hub存储库如何使用docker compose构建docker映像,docker,docker-compose,Docker,Docker Compose,假设我有一个docker hub存储库my\u registry/project\u name\u service1 我想用以下存储库名称构建docker映像my\u registry/project\u name\u service1 e、 g docker-compose.yml service1: image: my_registry/project_name_service1 当我使用docker compose build service1构建图像时 存储库名称变为project
my\u registry/project\u name\u service1
我想用以下存储库名称构建docker映像my\u registry/project\u name\u service1
e、 g docker-compose.yml
service1:
image: my_registry/project_name_service1
当我使用docker compose build service1构建图像时
存储库名称变为project\u name\u service1
其中在.env文件COMPOSE\u project\u name=project\u name
现在
当我使用docker compose build service1
因此,我可以使用
docker compose push service1
将图像推送到docker注册表(比如docker hub)使用container\u name:my\u注册表/project\u name\u服务为您的docker图像提供容器名称值
请参阅此文档:使用容器名称:my\u registry/project\u name\u service
请参阅此文档:我认为您在术语方面有点混淆。
你有图像和容器。他们每个人都有名字。
图像名称是/:
。
容器名称可以是任何内容。
拉取或推送图像时,零件将决定从哪个存储库拉取或推送到哪个存储库
在docker-compose.yml中定义服务
如果您只为服务定义“映像”,而没有构建上下文,那么将不会构建任何内容。运行“docker compose up”时将下载图像
如果定义一个构建上下文(“build”),docker compose将基于该上下文构建一个映像,然后用您在“image”中指定的名称对其进行标记
“docker COMPOSE up”使用COMPOSE_项目名称来命名容器,而不是图像
如果需要,还可以使用docker命令重新标记图像
我希望这能更清楚一点,并且您了解如何配置docker compose文件。如果您仍然有问题,请给我留言。我认为您在条款方面有点混淆。
你有图像和容器。他们每个人都有名字。
图像名称是/:
。
容器名称可以是任何内容。
拉取或推送图像时,零件将决定从哪个存储库拉取或推送到哪个存储库
在docker-compose.yml中定义服务
如果您只为服务定义“映像”,而没有构建上下文,那么将不会构建任何内容。运行“docker compose up”时将下载图像
如果定义一个构建上下文(“build”),docker compose将基于该上下文构建一个映像,然后用您在“image”中指定的名称对其进行标记
“docker COMPOSE up”使用COMPOSE_项目名称来命名容器,而不是图像
如果需要,还可以使用docker命令重新标记图像
我希望这能更清楚一点,并且您了解如何配置docker compose文件。如果您仍然有问题,请给我留言。我如何使用以下格式的存储库名称构建图像:registry\u name/repository\u name
或registry\u name/some\u name
在服务中用您需要的任何值填充图像。当您构建它时,将使用该名称标记它工作的图像。我使用了两个独立的docker compose文件。docker-compose.yml和production-docker-compose.yml。因此,在每个构建中,它都使用默认的docker-compose.yml文件。很高兴听到这个消息。您应该考虑使用DOCK-COMPUTE.OURIDDE.YML来实现这一点。它让您可以轻松覆盖部分配置。如何使用以下格式的存储库名称构建映像:registry\u name/repository\u name
或registry\u name/some\u name
在服务中使用您需要的任何值填充映像。当您构建它时,将使用该名称标记它工作的图像。我使用了两个独立的docker compose文件。docker-compose.yml和production-docker-compose.yml。因此,在每个构建中,它都使用默认的docker-compose.yml文件。很高兴听到这个消息。您应该考虑使用DOCK-COMPUTE.OURIDDE.YML来实现这一点。它使您可以轻松覆盖部分配置。