Skip to content

Commit

Permalink
hack/Containerfile: New file for local container builds
Browse files Browse the repository at this point in the history
This is a relatively efficient container-oriented build flow
suitable for local iteration.

Signed-off-by: Colin Walters <walters@verbum.org>
  • Loading branch information
cgwalters committed Jan 12, 2024
1 parent fad73f2 commit 67e3f05
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
.cosa
_kola_temp
docs
ci
hack
target
13 changes: 13 additions & 0 deletions hack/Containerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# This container build is just a demo effectively; it shows how one might
# build bootc in a container flow, using Fedora ELN as the target.
FROM quay.io/centos-bootc/fedora-bootc:eln as build
RUN dnf config-manager --set-enabled eln-crb && dnf -y install cargo ostree-devel openssl-devel && dnf clean all
COPY . /build
WORKDIR /build
# See https://www.reddit.com/r/rust/comments/126xeyx/exploring_the_problem_of_faster_cargo_docker/
# We aren't using the full recommendations there, just the simple bits.
RUN --mount=type=cache,target=/build/target --mount=type=cache,target=/var/roothome make bin-archive && mkdir -p /out && cp target/bootc.tar.zst /out

FROM quay.io/centos-bootc/fedora-bootc:eln
COPY --from=build /out/bootc.tar.zst /tmp
RUN tar -C / --zstd -xvf /tmp/bootc.tar.zst && rm -vf /tmp/*

0 comments on commit 67e3f05

Please sign in to comment.