Dockerfile多镜像构建方式

2024-02-23 0 448
目录
  • 背景
  • 官方文档
  • 总结

背景

实际项目经常需要构建多个服务器镜像,绝大数情况,除了 Dockerfile 文件中除了 进程名不一样,其他基本是一样的。

显然写多个重复的 Dockerfile 不符合程序员思维。

翻了下官方文档,确实官方也已经给出了解决方案。

官方文档

官方文档: https://docs.docker.com/engine/reference/commandline/build/#specifying-target-build-stage—target

不翻墙,通常是打不开这个网页的,顺手也摘录下吧:

Specifying target build stage (–target)When building a Dockerfile with multiple build stages, –target can be used to specify an intermediate build stage by name as a final stage for the resulting image. Commands after the target stage will be skipped.FROM debian AS build-env…FROM alpine AS production-env…$ docker build -t mybuildimage –target build-env .

因此基本上你写的 Dockerfile 会是这样子的:

FROM centos:7 AS xxx_base
xxxx
xxxx
xxxx

FROM xxx_base AS LoginServer
xxxx

FROM xxx_base AS Gateway
xxxx

构建命令类似为:

docker build -t LoginServer –target LoginServer .
docker build -t Gateway –target Gateway .

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持悠久资源网。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 Linux服务器 Dockerfile多镜像构建方式 https://www.u-9.cn/server/linux/172924.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务