docker: Further optimize multi-layered build.
Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
parent
98bbf58121
commit
3ffc238799
7 changed files with 28 additions and 1 deletions
|
|
@ -13,6 +13,9 @@ ARG cargo_spec_features
|
|||
ARG pkg_dir
|
||||
ARG deb_args=""
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
WORKDIR /usr/src/tuwunel
|
||||
RUN \
|
||||
--mount=type=cache,dst=${RUSTUP_HOME},sharing=locked \
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ WORKDIR /usr/lib/${sys_target}
|
|||
COPY --from=rocksdb . .
|
||||
|
||||
WORKDIR /usr/src/tuwunel
|
||||
COPY --link --from=recipe recipe.json .
|
||||
COPY --from=recipe recipe.json .
|
||||
|
||||
ENV CARGO_BUILD_RUSTFLAGS=${CARGO_BUILD_RUSTFLAGS}
|
||||
RUN \
|
||||
|
|
|
|||
|
|
@ -13,6 +13,9 @@ ARG cargo_spec_features
|
|||
ARG pkg_dir
|
||||
ARG gen_rpm_args=""
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
WORKDIR /usr/src/tuwunel
|
||||
RUN \
|
||||
--mount=type=cache,dst=${RUSTUP_HOME},sharing=locked \
|
||||
|
|
|
|||
|
|
@ -8,6 +8,9 @@ ARG CARGO_TARGET
|
|||
ARG rustup_version="1.28.1"
|
||||
ARG rustup_components
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
WORKDIR /opt
|
||||
RUN \
|
||||
--mount=type=cache,dst=${RUSTUP_HOME},sharing=locked \
|
||||
|
|
@ -50,6 +53,9 @@ ARG CARGO_HOME
|
|||
ARG CARGO_TARGET
|
||||
ARG cargo_installs
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
RUN \
|
||||
--mount=type=cache,dst=${RUSTUP_HOME},sharing=locked \
|
||||
--mount=type=cache,dst=${CARGO_HOME},sharing=locked \
|
||||
|
|
|
|||
|
|
@ -11,6 +11,9 @@ ARG var_cache
|
|||
ARG var_lib_apt
|
||||
ARG packages
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
ENV packages="ca-certificates ${packages}"
|
||||
RUN \
|
||||
--mount=type=cache,dst=${var_cache},sharing=locked \
|
||||
|
|
@ -31,6 +34,9 @@ FROM input AS valgrind
|
|||
ARG var_cache
|
||||
ARG var_lib_apt
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
RUN \
|
||||
--mount=type=cache,dst=${var_cache},sharing=locked \
|
||||
--mount=type=cache,dst=${var_lib_apt},sharing=locked \
|
||||
|
|
@ -44,6 +50,9 @@ FROM input AS perf
|
|||
ARG var_cache
|
||||
ARG var_lib_apt
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
RUN \
|
||||
--mount=type=cache,dst=${var_cache},sharing=locked \
|
||||
--mount=type=cache,dst=${var_lib_apt},sharing=locked \
|
||||
|
|
|
|||
|
|
@ -22,6 +22,9 @@ ARG CARGO_HOME
|
|||
ARG CARGO_TARGET
|
||||
ARG CARGO_TERM_VERBOSE=0
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
WORKDIR /usr/src/tuwunel
|
||||
COPY --link --from=source /usr/src/tuwunel .
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,9 @@ xz-utils \
|
|||
${packages} \
|
||||
"
|
||||
|
||||
WORKDIR /
|
||||
COPY --link --from=input . .
|
||||
|
||||
RUN \
|
||||
--mount=type=cache,dst=${var_cache},sharing=locked \
|
||||
--mount=type=cache,dst=${var_lib_apt},sharing=locked \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue