From 06ce862ea0f7f19ef3220a32097eccfae0e43d29 Mon Sep 17 00:00:00 2001 From: Kim Rutherford Date: Fri, 29 Nov 2024 18:40:23 +1300 Subject: [PATCH] Update base Docker image to Debian Bookworm --- .github/workflows/test-with-docker.yml | 2 +- .travis.yml | 2 +- Dockerfile | 2 +- etc/Dockerfile-base | 19 ++++++++++++++----- etc/docker-run-tests.sh | 2 +- script/canto_docker | 2 +- script/canto_start_docker | 2 +- 7 files changed, 20 insertions(+), 11 deletions(-) diff --git a/.github/workflows/test-with-docker.yml b/.github/workflows/test-with-docker.yml index f30306946..540147f3c 100644 --- a/.github/workflows/test-with-docker.yml +++ b/.github/workflows/test-with-docker.yml @@ -17,6 +17,6 @@ jobs: steps: - uses: actions/checkout@v3 - name: pull base image - run: docker pull pombase/canto-base:v17 + run: docker pull pombase/canto-base:v18 - name: run make test inside a Docker container run: ./etc/docker-run-tests.sh diff --git a/.travis.yml b/.travis.yml index f18209626..ee95a9287 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,7 +4,7 @@ services: - docker before_install: - - docker pull pombase/canto-base:v15 + - docker pull pombase/canto-base:v18 # this runs "make test" inside a Docker container script: ./etc/docker-run-tests.sh diff --git a/Dockerfile b/Dockerfile index 4bdc960c4..c8f7ffa65 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM pombase/canto-base:v15 +FROM pombase/canto-base:v18 MAINTAINER Kim Rutherford COPY . canto/ diff --git a/etc/Dockerfile-base b/etc/Dockerfile-base index 9a7e32d86..62642b327 100644 --- a/etc/Dockerfile-base +++ b/etc/Dockerfile-base @@ -1,6 +1,6 @@ -# build with: docker build --squash -f etc/Dockerfile-base -t=pombase/canto-base:v15 . +# build with: docker build --squash -f etc/Dockerfile-base -t=pombase/canto-base:v18 . -FROM bitnami/minideb:stretch +FROM bitnami/minideb:bookworm MAINTAINER Kim Rutherford RUN apt-get update && apt-get upgrade -y && apt-get install -y apt-utils @@ -12,7 +12,16 @@ RUN apt-get install -y ntpdate sqlite3 make tar gzip whiptail gcc g++ wget \ RUN apt-get update; \ apt-get install -y libcatalyst-perl libcatalyst-modules-perl \ - libserver-starter-perl starman \ + libserver-starter-perl starman liblwp-protocol-https-perl \ + libnet-ssleay-perl libnet-https-any-perl \ + libbio-chado-schema-perl libcarp-always-perl libdata-rmap-perl \ + libdbd-sqlite3-perl libdbix-class-perl \ + libextutils-makemaker-dist-zilla-develop-perl \ + libiterator-simple-perl libjson-any-perl liblist-compare-perl \ + libmoosex-traits-perl libmouse-perl libplack-middleware-debug-perl \ + libplack-middleware-expires-perl libstring-similarity-perl \ + libtest-more-utf8-perl libtext-csv-encoded-perl \ + libtext-multimarkdown-perl libtext-trim-perl libutf8-all-perl \ libmodule-install-perl libcatalyst-devel-perl liblocal-lib-perl \ apt-transport-https ca-certificates && \ apt-get clean @@ -25,7 +34,7 @@ RUN echo installing lib lucene && (cd /tmp/; \ dpkg -i libclucene0ldbl_0.9.21b-2+b1_amd64.deb libclucene-dev_0.9.21b-2+b1_amd64.deb && \ rm libclucene0ldbl_0.9.21b-2+b1_amd64.deb libclucene-dev_0.9.21b-2+b1_amd64.deb) -RUN apt-get -y install openjdk-8-jre-headless +RUN apt-get -y install openjdk-17-jre-headless RUN mkdir /tmp/canto COPY . /tmp/canto/ @@ -34,7 +43,7 @@ RUN patch /usr/include/CLucene/store/FSDirectory.h < /tmp/canto/etc/clucene_comp RUN cpanm Lucene -RUN (cd /tmp/canto; perl Makefile.PL && make installdeps_notest); rm -rf /tmp/canto +RUN (cd /tmp/canto; export PERL_MM_USE_DEFAULT=1; perl Makefile.PL && make installdeps_notest); rm -rf /tmp/canto RUN rm -rf /root/.local /root/.cpan* diff --git a/etc/docker-run-tests.sh b/etc/docker-run-tests.sh index 027e3f402..03ba78455 100755 --- a/etc/docker-run-tests.sh +++ b/etc/docker-run-tests.sh @@ -1,4 +1,4 @@ #!/bin/sh - docker run --rm --net="host" --mount type=bind,source=$(pwd)/,target=/canto -w=/canto \ - pombase/canto-base:v17 /bin/bash -c "cd /canto && perl Makefile.PL && make test" + pombase/canto-base:v18 /bin/bash -c "cd /canto && perl Makefile.PL && make test" diff --git a/script/canto_docker b/script/canto_docker index a822766e0..581c79265 100755 --- a/script/canto_docker +++ b/script/canto_docker @@ -55,7 +55,7 @@ then DOCKER_COMMAND="podman" fi -CANTO_DOCKER_RUN_ARGS="$EXTRA_ARGS --rm $INTERACTIVE_ARGS --mount type=bind,source=$(pwd)/logs,target=/logs --mount type=bind,source=$(pwd)/data,target=/data --mount type=bind,source=$(pwd)/import_export,target=/import_export --mount type=bind,source=$(pwd)/canto,target=/canto -w=/canto docker.io/pombase/canto-base:v15" +CANTO_DOCKER_RUN_ARGS="$EXTRA_ARGS --rm $INTERACTIVE_ARGS --mount type=bind,source=$(pwd)/logs,target=/logs --mount type=bind,source=$(pwd)/data,target=/data --mount type=bind,source=$(pwd)/import_export,target=/import_export --mount type=bind,source=$(pwd)/canto,target=/canto -w=/canto docker.io/pombase/canto-base:v18" cd canto diff --git a/script/canto_start_docker b/script/canto_start_docker index 7eaa8ad3f..d355d2ec4 100755 --- a/script/canto_start_docker +++ b/script/canto_start_docker @@ -76,7 +76,7 @@ then fi fi -CANTO_DOCKER_RUN_ARGS="$EXTRA_ARGS -i $TTY_OPT --rm $DEBUG --mount type=bind,source=$(pwd)/logs,target=/logs --mount type=bind,source=$(pwd)/data,target=/data --mount type=bind,source=$(pwd)/import_export,target=/import_export --mount type=bind,source=$(pwd)/canto,target=/canto -w=/canto pombase/canto-base:v15" +CANTO_DOCKER_RUN_ARGS="$EXTRA_ARGS -i $TTY_OPT --rm $DEBUG --mount type=bind,source=$(pwd)/logs,target=/logs --mount type=bind,source=$(pwd)/data,target=/data --mount type=bind,source=$(pwd)/import_export,target=/import_export --mount type=bind,source=$(pwd)/canto,target=/canto -w=/canto pombase/canto-base:v18" cd canto