最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
如何在 Docker Compose 中使用 image 指令指定预构建镜像教程
时间:2026-07-12 08:58:52 编辑:袖梨 来源:一聚教程网
image指令用于指定服务使用的镜像名称和标签,如nginx:1.25或myapp:dev;单独使用时不构建,仅拉取运行;与build联用时则为构建结果打标签。
在 Docker Compose 中,直接使用 image 指令指定一个已存在的镜像(如本地构建好的或从 Docker Hub 拉取的)是最简单、最常用的方式。它不触发构建过程,只负责拉取并运行该镜像。
image 指令的基本用法
image 字段用于声明服务要使用的镜像名称和标签,格式为 repository/name:tag。如果不写标签,默认为 latest。
- 使用官方镜像:
image: nginx:1.25 - 使用本地已构建的镜像:
image: myapp:dev(前提是已通过docker build -t myapp:dev .构建过) - 使用私有仓库镜像:
image: registry.example.com/team/app:v2.1
配合 build 指令时 image 的作用
当同时存在 build 和 image 时,image 定义的是构建完成后要打上的镜像名和标签。Docker Compose 构建完会自动 docker tag 并保存为该名称。
- 示例:
web: build: ./web image: my-web-app:prod
- 执行
docker-compose up --build后,会基于./web目录构建,并将结果标记为my-web-app:prod - 下次再运行
docker-compose up(不加--build),就会直接使用这个已命名的镜像,跳过构建
验证镜像是否可用
运行前建议手动检查镜像是否存在,避免启动失败:
- 列出本地镜像:
docker images | grep myapp - 如果没看到,说明还没构建或拉取,需先执行
docker build -t myapp:latest .或docker pull nginx:alpine - Compose 启动时若找不到镜像,会尝试拉取远程同名镜像;若拉取失败且无本地镜像,容器就无法启动
常见误区提醒
注意不要混淆 image 和 build 的职责:
-
image单独存在 → 只拉取/运行,不构建 -
build单独存在 → 自动使用默认镜像名(如project_service),不显式打标签 -
build+image→ 构建后打指定标签,利于复用和部署识别 - 不要写
image: .或image: ./Dockerfile—— 这是无效写法,image必须是合法镜像名
相关文章
- 尽管工作室已关闭:Wreckreation 2 仍正式公布:距离前作发布仅九个月 07-22
- 率土之滨武将强度排行 率土之滨武将开荒搭配攻略表 07-22
- 挖掘者米娜怎样召唤伙伴成就攻略分享 07-22
- 仙灵物语最强阵容搭配攻略:仙灵物语高战力阵容推荐与实战解析 07-22
- 天堂2盟约怎么升级快:天堂2盟约快速升级技巧与高效练级指南 07-22
- 《幻兽帕鲁》世界树内部进入方法介绍 07-22