diff --git a/.env b/.env index afb0e900..76a55514 100644 --- a/.env +++ b/.env @@ -1,11 +1,11 @@ COMPOSE_PROJECT_NAME=kartozageoserver -IMAGE_VERSION=9.0.71-jdk11-temurin-focal -GS_VERSION=2.22.2 +IMAGE_VERSION=9.0.73-jdk11-temurin-focal +GS_VERSION=2.23.0 GEOSERVER_PORT=8600 # Build Arguments -JAVA_HOME=/usr/local/openjdk-11 -WAR_URL=http://downloads.sourceforge.net/project/geoserver/GeoServer/2.22.2/geoserver-2.22.2-war.zip +JAVA_HOME=/opt/java/openjdk +WAR_URL=http://downloads.sourceforge.net/project/geoserver/GeoServer/2.23.0/geoserver-2.23.0-war.zip STABLE_PLUGIN_BASE_URL=https://sourceforge.net/projects/geoserver/files/GeoServer DOWNLOAD_ALL_STABLE_EXTENSIONS=1 DOWNLOAD_ALL_COMMUNITY_EXTENSIONS=1 @@ -94,7 +94,7 @@ TOGGLE_MASTER=true TOGGLE_SLAVE=true EMBEDDED_BROKER=enabled # kartoza/postgis env variables https://github.com/kartoza/docker-postgis -POSTGIS_VERSION_TAG=14-3.1 +POSTGIS_VERSION_TAG=15-3.3 POSTGRES_DB=gis,gwc POSTGRES_USER=docker POSTGRES_PASS=docker diff --git a/Dockerfile b/Dockerfile index 353bcc5c..11a7955d 100755 --- a/Dockerfile +++ b/Dockerfile @@ -3,12 +3,12 @@ ############################################################################## #--------- Generic stuff all our Dockerfiles should start with so we get caching ------------ -ARG IMAGE_VERSION=9.0.71-jdk11-temurin-focal -ARG JAVA_HOME=/usr/local/openjdk-11 +ARG IMAGE_VERSION=9.0.73-jdk11-temurin-focal +ARG JAVA_HOME=/opt/java/openjdk FROM tomcat:$IMAGE_VERSION AS geoserver-prod LABEL maintainer="Tim Sutton" -ARG GS_VERSION=2.22.2 +ARG GS_VERSION=2.23.0 ARG WAR_URL=https://downloads.sourceforge.net/project/geoserver/GeoServer/${GS_VERSION}/geoserver-${GS_VERSION}-war.zip ARG STABLE_PLUGIN_BASE_URL=https://sourceforge.net/projects/geoserver/files/GeoServer ARG DOWNLOAD_ALL_STABLE_EXTENSIONS=1 diff --git a/README.md b/README.md index 9d49f4d3..bdf61cbb 100755 --- a/README.md +++ b/README.md @@ -57,7 +57,7 @@ The preferred way (but using most bandwidth for the initial image) is to get our docker trusted build like this: ```shell -VERSION=2.22.2 +VERSION=2.23.0 docker pull kartoza/geoserver:$VERSION ``` ### Building the image @@ -99,13 +99,13 @@ To build using a specific tagged release for tomcat image set the to choose which tag you need to build against. ``` -ie VERSION=2.22.2 -docker build --build-arg IMAGE_VERSION=8-jre8 --build-arg GS_VERSION=2.22.2 -t kartoza/geoserver:${VERSION} . +ie VERSION=2.23.0 +docker build --build-arg IMAGE_VERSION=8-jre8 --build-arg GS_VERSION=2.23.0 -t kartoza/geoserver:${VERSION} . ``` For some recent builds it is necessary to set the JAVA_PATH as well (e.g. Apache Tomcat/9.0.36) ``` -docker build --build-arg IMAGE_VERSION=9-jdk11-openjdk-slim --build-arg JAVA_HOME=/usr/local/openjdk-11/bin/java --build-arg GS_VERSION=2.22.2 -t kartoza/geoserver:2.22.2 . +docker build --build-arg IMAGE_VERSION=9-jdk11-openjdk-slim --build-arg JAVA_HOME=/usr/local/openjdk-11/bin/java --build-arg GS_VERSION=2.23.0 -t kartoza/geoserver:2.23.0 . ``` **Note:** Please check the [GeoServer documentation](https://docs.geoserver.org/stable/en/user/production/index.html) @@ -172,7 +172,7 @@ The image ships with the following stable plugins: * csw-plugin **Note:** The plugins listed above are omitted from [Stable_plugins.txt](https://github.com/kartoza/docker-geoserver/blob/master/build_data/stable_plugins.txt) -even though they are considered [stable plugins](https://sourceforge.net/projects/geoserver/files/GeoServer/2.22.2/extensions/) +even though they are considered [stable plugins](https://sourceforge.net/projects/geoserver/files/GeoServer/2.23.0/extensions/) The image activates them on startup. The image provides the necessary plugin zip files which are used when activating the @@ -190,7 +190,7 @@ The environment variable `STABLE_EXTENSIONS` can be used to activate plugins lis Example ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -d -p 8600:8080 --name geoserver -e STABLE_EXTENSIONS=charts-plugin,db2-plugin kartoza/geoserver:${VERSION} ``` @@ -211,7 +211,7 @@ The environment variable `COMMUNITY_EXTENSIONS` can be used to activate plugins Example ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -d -p 8600:8080 --name geoserver -e COMMUNITY_EXTENSIONS=gwc-sqlite-plugin,ogr-datastore-plugin kartoza/geoserver:${VERSION} ``` @@ -229,7 +229,7 @@ Geoserver ships with sample data which can be used by users to familiarize them This is not activated by default. You can activate it using the environment variable `SAMPLE_DATA=true` ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -d -p 8600:8080 --name geoserver -e SAMPLE_DATA=true kartoza/geoserver:${VERSION} ``` @@ -320,14 +320,14 @@ If you set the environment variable `SSL=true` but do not provide the pem files the container will generate a self-signed SSL certificates. ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -it --name geoserver -e PKCS12_PASSWORD=geoserver -e JKS_KEY_PASSWORD=geoserver -e JKS_STORE_PASSWORD=geoserver -e SSL=true -p 8443:8443 -p 8600:8080 kartoza/geoserver:${VERSION} ``` If you already have your perm files (fullchain.pem and privkey.pem) you can mount the directory containing your keys as: ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -it --name geo -v /etc/certs:/etc/certs -e PKCS12_PASSWORD=geoserver -e JKS_KEY_PASSWORD=geoserver -e JKS_STORE_PASSWORD=geoserver -e SSL=true -p 8443:8443 -p 8600:8080 kartoza/geoserver:${VERSION} ``` @@ -403,7 +403,7 @@ To include Tomcat extras including docs, examples, and the manager webapp, set t to use a strong password otherwise the default one is set up. ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -it --name geoserver -e TOMCAT_EXTRAS=true -p 8600:8080 kartoza/geoserver:${VERSION} ``` @@ -430,7 +430,7 @@ If you have downloaded extra fonts you can mount the folder to the path path during initialisation. ``` -ie VERSION=2.22.2 +ie VERSION=2.23.0 docker run -v fonts:/opt/fonts -p 8080:8080 -t kartoza/geoserver:${VERSION} ``` diff --git a/build_data/community_plugins.txt b/build_data/community_plugins.txt index b03b89aa..15e66d93 100644 --- a/build_data/community_plugins.txt +++ b/build_data/community_plugins.txt @@ -11,7 +11,6 @@ flatgeobuf-plugin gdal-wcs-plugin gdal-wps-plugin geopkg-plugin -geostyler-plugin gpx-plugin gsr-plugin gwc-azure-blobstore-plugin diff --git a/build_data/web.xml b/build_data/web.xml index 3f1ccf96..511cc3a6 100644 --- a/build_data/web.xml +++ b/build_data/web.xml @@ -596,36 +596,25 @@ so the entrypoint script can deactivate Cors settings if DISABLE_CORS is set --> - CorsFilter - org.apache.catalina.filters.CorsFilter - - cors.allowed.origins - * - - - cors.allowed.methods - GET,POST,HEAD,OPTIONS,PUT - - - cors.allowed.headers - Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers,If-Modified-Since,Range,Authorization - - - cors.exposed.headers - Access-Control-Allow-Origin,Access-Control-Allow-Credentials - - - cors.support.credentials - true - - - cors.preflight.maxage - 10 - + CorsFilter + org.apache.catalina.filters.CorsFilter + + cors.allowed.origins + * + + + cors.allowed.headers + Content-Type,X-Requested-With,accept,Access-Control-Request-Method,Access-Control-Request-Headers,If-Modified-Since,Range,Origin,Authorization + + + cors.exposed.headers + Access-Control-Allow-Origin,Access-Control-Allow-Credentials + + - CorsFilter - /* + CorsFilter + /* diff --git a/clustering/docker-compose.yml b/clustering/docker-compose.yml index a4bb6a8c..635d335c 100644 --- a/clustering/docker-compose.yml +++ b/clustering/docker-compose.yml @@ -19,7 +19,7 @@ services: healthcheck: test: "PGPASSWORD=docker pg_isready -h 127.0.0.1 -U docker -d gis" master: - image: kartoza/geoserver:2.22.2 + image: kartoza/geoserver:2.23.0 volumes: - geoserver-cluster-data:/opt/geoserver/data_dir ports: @@ -50,7 +50,7 @@ services: timeout: 10s retries: 3 node: - image: kartoza/geoserver:2.22.2 + image: kartoza/geoserver:2.23.0 volumes: - geoserver-cluster-data:/opt/geoserver/data_dir ports: diff --git a/docker-compose.yml b/docker-compose.yml index 1c94f57a..d95fd690 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -37,6 +37,7 @@ services: - MAXIMUM_MEMORY=${MAXIMUM_MEMORY} - STABLE_EXTENSIONS=${STABLE_EXTENSIONS} - COMMUNITY_EXTENSIONS=${COMMUNITY_EXTENSIONS} + - GEOSERVER_CONTEXT_ROOT=${GEOSERVER_CONTEXT_ROOT} depends_on: db: condition: service_healthy diff --git a/scripts/setup.sh b/scripts/setup.sh index d6861025..8e696622 100644 --- a/scripts/setup.sh +++ b/scripts/setup.sh @@ -133,7 +133,7 @@ fi # Install jetty-servlets if [[ -f ${GEOSERVER_HOME}/start.jar ]]; then - if [[ ! -f ${GEOSERVER_HOME}/webapps/${GEOSERVER_CONTEXT_ROOT/WEB-INF/lib/jetty-servlets.jar ]]; then + if [[ ! -f ${GEOSERVER_HOME}/webapps/${GEOSERVER_CONTEXT_ROOT}/WEB-INF/lib/jetty-servlets.jar ]]; then validate_url https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-servlets/11.0.9/jetty-servlets-11.0.9.jar \ '-O "${GEOSERVER_HOME}"/webapps/${GEOSERVER_CONTEXT_ROOT}/WEB-INF/lib/jetty-servlets.jar' fi