Buildkit
{ "Op": { "Op": { "source": { "identifier": "docker-image://docker.io/library/alpine:latest" } }, "platform": { "Architecture": "amd64", "OS": "linux" }, "constraints": {} }, "Digest": "sha256:665ba8b2cdc0cb0200e2a42a6b3c0f8f684089f4cd1b81494fbb9805879120f7", "OpMetadata": { "caps": { "source.image": true } } }[worker.oci] [[worker.oci.gcpolicy]] keepBytes = 512000000 keepDuration = 172800 filters = [ "type==source.local", "type==exec.cachemount", "type==source.git.checkout"] [[worker.oci.gcpolicy]] all = true keepBytes = 1024000000
FROM ubuntu AS base RUN apt-get update && apt-get install git FROM base AS src1 RUN git clone … FROM base AS src2 RUN git clone …ARG BUILD_VERSION=1 FROM alpine AS base RUN … FROM base AS branch-version-1 RUN touch version1 FROM base AS branch-version-2 RUN touch version2 FROM branch-version-${BUILD_VERSION} AS after-condition FROM after-condition RUN …
# syntax=docker/dockerfile:1.2 # Build Stage FROM maven as builder COPY pom.xml ~/pom.xml RUN --mount=type=cache,target=~/.m2,id=java-sample-cache,uid=500,gid=500 \ mvn -Dmaven.repo.local=/home1/irteam/.m2/repository dependency:go-offline COPY src ~/src RUN --mount=type=cache,target=~/.m2,id=java-sample-cache,uid=500,gid=500 \ mvn -Dmaven.repo.local=~/.m2/repository install # Main Stage ARG DEPENDENCY=~/build/dependency COPY --from=builder ${DEPENDENCY}/BOOT-INF/lib ~/apps/spring-boot-app/lib COPY --from=builder ${DEPENDENCY}/META-INF ~/apps/spring-boot-app/META-INF COPY entrypoint.sh ~/entrypoint.sh ENTRYPOINT ["~/entrypoint.sh"]
Last updated