开发者社区> 问答> 正文

在Docker多阶段映像中跨阶段传递环境变量

我有一个具有4个较低层的docker映像。我想使用多级减少当前图像层的大小,但这会导致环境,端口和cmd配置属性的丢失。有没有办法在dockerfile中的各个阶段传递此类配置变量。

展开
收起
几许相思几点泪 2019-12-03 15:37:09 651 0
1 条回答
写回答
取消 提交回答
  • 您可以执行以下任一操作

    使用基本容器并在那里设置环境值

    FROM alpine:latest as base
    ARG version_default
    ENV version=$version_default
    
    FROM base
    RUN echo ${version}
    
    FROM base
    RUN echo ${version}
    
    

    其他方法ARGS如下使用。有一些重复,但变得更加集中

    ARG version_default=v1
    
    FROM alpine:latest as base1
    ARG version_default
    ENV version=$version_default
    RUN echo ${version}
    RUN echo ${version_default}
    
    FROM alpine:latest as base2
    ARG version_default
    RUN echo ${version_default}
    
    2019-12-03 15:38:08
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
应用 Docker 进行持续交付:用技术改变交付路程 立即下载
从Docker到容器服务 立即下载
构建基因数据应用生态系统—— docker in Bio/informatics 立即下载