@@ -4,22 +4,31 @@ ARG centos_stream_version=9
44ARG extra_repository=crb
55ARG mapnik_version=4.0.3
66
7- # Mapnik Builder
8- FROM quay.io/centos/centos:stream${centos_stream_version} AS mapnik-builder
7+ # Base
8+ FROM quay.io/centos/centos:stream${centos_stream_version} AS base
99
1010# # Arguments
1111ARG centos_stream_version
1212ARG extra_repository
13- ARG mapnik_version
1413
15- # # Install mapnik-builder dependencies
14+ # # Install base dependencies
1615RUN --mount=type=cache,sharing=locked,id=centos:stream${centos_stream_version}-/var/cache/dnf,target=/var/cache/dnf \
1716 echo "install_weak_deps=False" >> /etc/dnf/dnf.conf && \
1817 echo "keepcache=True" >> /etc/dnf/dnf.conf && \
1918 dnf --assumeyes install "dnf-command(config-manager)" && \
2019 dnf config-manager --save --setopt=${extra_repository}.enabled=1 && \
2120 dnf --assumeyes install epel-release && \
22- dnf --assumeyes upgrade && \
21+ dnf --assumeyes upgrade
22+
23+ # Mapnik Builder
24+ FROM base AS mapnik-builder
25+
26+ # # Arguments
27+ ARG centos_stream_version
28+ ARG mapnik_version
29+
30+ # # Install mapnik-builder dependencies
31+ RUN --mount=type=cache,sharing=locked,id=centos:stream${centos_stream_version}-/var/cache/dnf,target=/var/cache/dnf \
2332 dnf --assumeyes install \
2433 boost-devel \
2534 cairo-devel \
@@ -71,20 +80,13 @@ RUN --mount=type=cache,id=centos:stream${centos_stream_version}-mapnik-src:${map
7180 cmake --install . --strip
7281
7382# Builder
74- FROM quay.io/centos/centos:stream${centos_stream_version} AS builder
83+ FROM base AS builder
7584
7685# # Arguments
7786ARG centos_stream_version
78- ARG extra_repository
7987
8088# # Install builder dependencies
8189RUN --mount=type=cache,sharing=locked,id=centos:stream${centos_stream_version}-/var/cache/dnf,target=/var/cache/dnf \
82- echo "install_weak_deps=False" >> /etc/dnf/dnf.conf && \
83- echo "keepcache=True" >> /etc/dnf/dnf.conf && \
84- dnf --assumeyes install "dnf-command(config-manager)" && \
85- dnf config-manager --save --setopt=${extra_repository}.enabled=1 && \
86- dnf --assumeyes install epel-release && \
87- dnf --assumeyes upgrade && \
8890 dnf --assumeyes install \
8991 boost-devel \
9092 cairo-devel \
@@ -133,20 +135,13 @@ RUN export DESTDIR=/tmp/mod_tile && \
133135 cmake --install . --strip
134136
135137# Runner
136- FROM quay.io/centos/centos:stream${centos_stream_version} AS runner
138+ FROM base AS runner
137139
138140# # Arguments
139141ARG centos_stream_version
140- ARG extra_repository
141142
142143# # Install runner dependencies
143144RUN --mount=type=cache,sharing=locked,id=centos:stream${centos_stream_version}-/var/cache/dnf,target=/var/cache/dnf \
144- echo "install_weak_deps=False" >> /etc/dnf/dnf.conf && \
145- echo "keepcache=True" >> /etc/dnf/dnf.conf && \
146- dnf --assumeyes install "dnf-command(config-manager)" && \
147- dnf config-manager --save --setopt=${extra_repository}.enabled=1 && \
148- dnf --assumeyes install epel-release && \
149- dnf --assumeyes upgrade && \
150145 dnf --assumeyes install \
151146 boost-regex \
152147 cairo \
0 commit comments