diff --git a/Dockerfile b/Dockerfile index 40fd609..71b82ef 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:bullseye-slim AS sqitch-build +FROM debian:bookworm-slim AS sqitch-build # Install system dependencies. WORKDIR /work @@ -25,23 +25,24 @@ RUN perl Build.PL --quiet --install_base /app --etcdir /etc/sqitch \ --config installman1dir= --config installsiteman1dir= --config installman3dir= --config installsiteman3dir= \ --with sqlite --with postgres --with firebird --with odbc \ && ln -s /usr/include/ibase.h /usr/include/firebird/ \ - && perl -i -pe 's/(use Data::Dump.+)//' inc/Menlo/Sqitch.pm \ + # XXX Fix for removal of BEGIN block in v1.4.1. + && perl -i -pe 's/BEGIN/use App::Sqitch/g' inc/Module/Build/Sqitch.pm \ && ./Build bundle \ && rm -rf /app/man \ && find /app -name '*.pod' | grep -v sqitch | xargs rm -rf ################################################################################ # Copy to the final image without all the build stuff. -FROM debian:bullseye-slim AS sqitch +FROM debian:bookworm-slim AS sqitch # Install runtime system dependencies and remove unnecesary files. RUN mkdir -p /usr/share/man/man1 /usr/share/man/man7 \ && apt-get -qq update \ - && apt-get -qq --no-install-recommends install less libperl5.32 perl-doc nano ca-certificates \ + && apt-get -qq --no-install-recommends install less libperl5.36 perl-doc nano ca-certificates \ sqlite3 \ firebird3.0-utils libfbclient2 \ libpq5 postgresql-client \ - mariadb-client-core-10.5 libmariadb-dev-compat libdbd-mysql-perl \ + mariadb-client-core libmariadb-dev-compat libdbd-mysql-perl \ && apt-cache pkgnames | grep python | xargs apt-get purge -qq \ && apt-cache pkgnames | grep libmagic | xargs apt-get purge -qq \ && apt-get clean \ @@ -58,7 +59,8 @@ RUN mkdir -p /usr/share/man/man1 /usr/share/man/man7 \ && chown -R sqitch:sqitch /home # Copy the app and config from the build image. -COPY --from=sqitch-build /app . +COPY --from=sqitch-build /app/lib /lib +COPY --from=sqitch-build /app/bin /bin COPY --from=sqitch-build /etc/sqitch /etc/sqitch/ # Set up environment, entrypoint, and default command. diff --git a/README.md b/README.md index cf1ae0c..1dd4643 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Description ----------- This project is the source for creating the official [Sqitch Project] Docker -Image. It's built on [Debian bullseye-slim] in an effort to keep the image as +Image. It's built on [Debian bookworm-slim] in an effort to keep the image as small as possible while supporting all known engines. It includes support for managing [PostgreSQL], [CockroachDB], [YugabyteDB], [SQLite], [MariaDB] ([MySQL]), and [Firebird] databases, and other images may be built to support @@ -80,7 +80,7 @@ Notes one based on this image and add whatever editors you like. [Sqitch Project]: https://sqitch.org - [Debian bullseye-slim]: https://hub.docker.com/_/debian/tags?name=bullseye-slim + [Debian bookworm-slim]: https://hub.docker.com/_/debian/tags?name=bookworm-slim [PostgreSQL]: https://postgresql.org [YugabyteDB]: https://www.yugabyte.com/yugabytedb/ [CockroachDB]: https://www.cockroachlabs.com/product/ diff --git a/build b/build index 7041b5d..c3b10f6 100755 --- a/build +++ b/build @@ -37,7 +37,7 @@ fi # Build and export imaages to Docker for all supported architectures. for arch in $ARCHS; do printf "Building for linux/%s\n" "${arch}" - docker buildx build --platform="linux/${arch}" --pull --load \ + docker buildx build --platform="linux/${arch}" --pull --load --progress=plain \ --label org.opencontainers.image.created=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \ --label org.opencontainers.image.authors="${AUTHORS}" \ --label org.opencontainers.image.url="${URL}" \ diff --git a/exasol/Dockerfile b/exasol/Dockerfile index aec7703..889f885 100644 --- a/exasol/Dockerfile +++ b/exasol/Dockerfile @@ -1,4 +1,4 @@ -FROM --platform=linux/amd64 debian:bullseye-slim AS exa-build +FROM --platform=linux/amd64 debian:bookworm-slim AS exa-build WORKDIR /work diff --git a/oracle/Dockerfile b/oracle/Dockerfile index a5e6a6e..d39eb75 100644 --- a/oracle/Dockerfile +++ b/oracle/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:bullseye-slim AS ora-build +FROM debian:bookworm-slim AS ora-build WORKDIR /work diff --git a/snowflake/Dockerfile b/snowflake/Dockerfile index 48f616d..1efbe75 100644 --- a/snowflake/Dockerfile +++ b/snowflake/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:bullseye-slim AS snow-build +FROM debian:bookworm-slim AS snow-build WORKDIR /work