使用多阶段泊坞窗文件输出多个图像

Jim*_*nse 10 docker docker-compose docker-multi-stage-build

新的docker功能是在dockerfile中执行类似的操作

FROM php7-fpm as build
...

FROM build AS test
...

FROM test AS staging
...
Run Code Online (Sandbox Code Playgroud)

据我所知,最后一个FROM语句标记了最终的输出图像.如何从一个中间图像中获得两个最终图像?

喜欢

...
FROM build AS test
...
FROM test AS staging
...
FROM test AS prod
Run Code Online (Sandbox Code Playgroud)

不应丢弃测试,分期和产品.我想将它们签入存储库.

Sta*_*arx 10

您可以在特定阶段停止构建并根据需要标记它们.

docker build --target test -t starx/test:latest .
docker build --target staging -t starx/staging:latest .
docker build --target prod -t starx/prod:latest .
Run Code Online (Sandbox Code Playgroud)

这样,您可以使用不同的图像,并且可以单独按下每个图像.

  • 哦......我想我明白了......因为docker-compose 3.4可以设置目标阶段......这就是我需要的!谢谢 (2认同)