在 Dockerfile 中,FROM指令用于指定基础镜像。如果你想要指定从本地获取基础镜像,而不是从远程仓库(如 Docker Hub)拉取,你可以使用docker build命令的--build-arg参数配合ARG指令在Dockerfile中动态设置FROM指令。

以下是具体步骤:

  1. 首先确保你已经在本地拥有想要使用的镜像。

  2. 在 Dockerfile 中,使用 ARG 指令定义一个参数,然后用该参数作为 FROM 指令的一部分。例如:

# 使用一个参数名为BASE_IMAGE
ARG BASE_IMAGE

# 在FROM指令中使用该参数
FROM $BASE_IMAGE
3.当构建镜像时,使用 --build-arg 参数告诉 docker build 命令应该使用哪个值作为BASE_IMAGE参数的值。例如:
# 假设我们有一个名为 my-base-image:latest 的本地镜像
docker build --build-arg BASE_IMAGE=my-base-image:latest -t my-app .

在这个例子中,my-base-image:latest 是你在本地已经存在的镜像名称和标签,而 my-app 是你要构建的新镜像的名称。

通过这种方式,Docker 将会使用你本地的 my-base-image:latest 镜像作为构建新镜像的基础。注意,你需要替换 my-base-image:latest 和 my-app 为实际要用的镜像名称和标签。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐