1

4 つの下位レイヤーを持つ docker イメージがあります。

マルチステージを使用して現在のイメージ レイヤーのサイズを縮小したいのですが、これによりステージ全体で環境、ポート、および cmd 構成プロパティが失われます。のステージ間でそのような構成変数を渡す方法はありますかDockerfile

4

1 に答える 1

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}

https://github.com/moby/moby/issues/37345からコピーされた例に注意してください

于 2019-12-03T07:32:11.487 に答える