kartoza / docker-geoserver

A docker recipe for GeoServer
GNU General Public License v2.0
614 stars 419 forks source link

latest tag out of date - 404 on /geoserver #234

Closed Toucan-Sam closed 3 years ago

Toucan-Sam commented 3 years ago

Hey guys, This appears to be related to #218 and #222 but neither of those provide an actual solution as far as I can tell.

When I start the geoserver container, server:8080/geoserver throws a 404 error.

Type: Status Report
Message: The requested resource [/geoserver] is not available
Description: The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

I have not deployed with SSL as I intend to use a reverse proxy to do termination.

# docker logs geoserver
Adding custom projection directory
STABLE_EXTENSIONS is unset, so we do not install any stable extensions
COMMUNITY_EXTENSIONS is unset, so we do not install any community extensions
NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[0.004s][warning][gc,ergo] -XX:NewSize and -XX:MaxNewSize override -XX:NewRatio
31-Mar-2021 22:42:23.687 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/10.0.4
31-Mar-2021 22:42:23.691 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Mar 5 2021 11:07:15 UTC
31-Mar-2021 22:42:23.691 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 10.0.4.0
31-Mar-2021 22:42:23.706 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
31-Mar-2021 22:42:23.707 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            3.10.0-1062.el7.x86_64
31-Mar-2021 22:42:23.707 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
31-Mar-2021 22:42:23.707 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/local/openjdk-11
31-Mar-2021 22:42:23.707 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           11.0.10+9
31-Mar-2021 22:42:23.707 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
31-Mar-2021 22:42:23.708 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /usr/local/tomcat
31-Mar-2021 22:42:23.708 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /usr/local/tomcat
31-Mar-2021 22:42:23.729 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
31-Mar-2021 22:42:23.729 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
31-Mar-2021 22:42:23.729 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util=ALL-UNNAMED
31-Mar-2021 22:42:23.730 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
31-Mar-2021 22:42:23.730 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
31-Mar-2021 22:42:23.730 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
31-Mar-2021 22:42:23.730 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
31-Mar-2021 22:42:23.730 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.awt.headless=true
31-Mar-2021 22:42:23.731 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms2G
31-Mar-2021 22:42:23.731 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx4G
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:PerfDataSamplingInterval=500
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.geotools.referencing.forceXY=true
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:SoftRefLRUPolicyMSPerMB=36000
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:NewRatio=2
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:+UseG1GC
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxGCPauseMillis=200
31-Mar-2021 22:42:23.732 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:ParallelGCThreads=20
31-Mar-2021 22:42:23.733 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:ConcGCThreads=5
31-Mar-2021 22:42:23.733 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:InitiatingHeapOccupancyPercent=70
31-Mar-2021 22:42:23.733 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:+CMSClassUnloadingEnabled
31-Mar-2021 22:42:23.733 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djts.overlay=ng
31-Mar-2021 22:42:23.733 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dfile.encoding=UTF8
31-Mar-2021 22:42:23.733 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Duser.timezone=GMT
31-Mar-2021 22:42:23.734 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djavax.servlet.request.encoding=UTF-8
31-Mar-2021 22:42:23.734 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djavax.servlet.response.encoding=UTF-8
31-Mar-2021 22:42:23.734 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -DCLUSTER_CONFIG_DIR=/opt/geoserver/data_dir/cluster/instance_23bd87cfa327d47e
31-Mar-2021 22:42:23.734 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -DGEOSERVER_DATA_DIR=/opt/geoserver/data_dir
31-Mar-2021 22:42:23.734 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -DGEOSERVER_AUDIT_PATH=/opt/geoserver/data_dir/monitoring/monitor_23bd87cfa327d47e
31-Mar-2021 22:42:23.734 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.geotools.shapefile.datetime=true
31-Mar-2021 22:42:23.735 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Ds3.properties.location=/opt/geoserver/data_dir/s3.properties
31-Mar-2021 22:42:23.735 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dsun.java2d.renderer.useThreadLocal=false
31-Mar-2021 22:42:23.735 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dsun.java2d.renderer.pixelsize=8192
31-Mar-2021 22:42:23.735 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:NewSize=300m
31-Mar-2021 22:42:23.735 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dlog4j.configuration=/usr/local/tomcat/log4j.properties
31-Mar-2021 22:42:23.736 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --patch-module=java.desktop=/usr/local/tomcat/marlin-0.9.4.2-Unsafe-OpenJDK9.jar
31-Mar-2021 22:42:23.736 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dsun.java2d.renderer=org.marlin.pisces.PiscesRenderingEngine
31-Mar-2021 22:42:23.736 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dgeoserver.login.autocomplete=on
31-Mar-2021 22:42:23.736 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -DGEOSERVER_CONSOLE_DISABLED=false
31-Mar-2021 22:42:23.737 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dgeoserver.xframe.shouldSetPolicy=true
31-Mar-2021 22:42:23.737 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
31-Mar-2021 22:42:23.738 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
31-Mar-2021 22:42:23.738 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
31-Mar-2021 22:42:23.738 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
31-Mar-2021 22:42:23.738 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
31-Mar-2021 22:42:23.739 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
31-Mar-2021 22:42:23.739 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
31-Mar-2021 22:42:23.752 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [1.2.26] using APR version [1.6.5].
31-Mar-2021 22:42:23.753 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true].
31-Mar-2021 22:42:23.758 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.1.1d  10 Sep 2019]
31-Mar-2021 22:42:24.459 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
31-Mar-2021 22:42:24.532 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [1206] milliseconds
31-Mar-2021 22:42:24.665 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
31-Mar-2021 22:42:24.665 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.0.4]
31-Mar-2021 22:42:24.679 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/usr/local/tomcat/webapps/ROOT]
31-Mar-2021 22:42:25.290 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/ROOT] has finished in [610] ms
31-Mar-2021 22:42:25.291 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/usr/local/tomcat/webapps/docs]
31-Mar-2021 22:42:25.339 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/docs] has finished in [49] ms
31-Mar-2021 22:42:25.344 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/usr/local/tomcat/webapps/examples]
31-Mar-2021 22:42:25.966 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/examples] has finished in [619] ms
31-Mar-2021 22:42:25.966 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/usr/local/tomcat/webapps/host-manager]
31-Mar-2021 22:42:26.027 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/host-manager] has finished in [60] ms
31-Mar-2021 22:42:26.027 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/usr/local/tomcat/webapps/manager]
31-Mar-2021 22:42:26.098 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/manager] has finished in [71] ms
31-Mar-2021 22:42:26.099 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/usr/local/tomcat/webapps/geoserver]
31-Mar-2021 22:42:41.075 INFO [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
31-Mar-2021 22:42:41.110 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
31-Mar-2021 22:42:41.114 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [/geoserver] startup failed due to previous errors
31-Mar-2021 22:42:41.200 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/geoserver] has finished in [15,101] ms
31-Mar-2021 22:42:41.206 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
31-Mar-2021 22:42:41.268 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [16734] milliseconds

Any advice on where I can find more information/logs about why: 31-Mar-2021 22:42:41.114 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [/geoserver] startup failed due to previous errors

Thanks guys.

tlvu commented 3 years ago

Probably same root cause as https://github.com/kartoza/docker-geoserver/issues/232 You'll have to re-pull again 2.18.2 or 2.19.0.

Toucan-Sam commented 3 years ago

Thanks for the response @tlvu, unfortunately, same issue. Good idea though. The image was older than I thought it was.

01-Apr-2021 00:30:59.775 INFO [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
01-Apr-2021 00:30:59.800 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
01-Apr-2021 00:30:59.801 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [/geoserver] startup failed due to previous errors
01-Apr-2021 00:30:59.856 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/local/tomcat/webapps/geoserver] has finished in [13,671] ms
01-Apr-2021 00:30:59.863 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
01-Apr-2021 00:30:59.936 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [15135] milliseconds

EDIT: For the sake of clarity, I'm using the latest tag.

Toucan-Sam commented 3 years ago

@tlvu But you were right in the end. The latest tag is not correctly updated and is using an older and broken image.

@kartoza Can this please be fixed? :)

tlvu commented 3 years ago

EDIT: For the sake of clarity, I'm using the latest tag.

@Toucan-Sam

Maybe try using the 2.19.0 tag?

latest tag probably track the master branch and currently I still see Tomcat 10 on the master branch https://github.com/kartoza/docker-geoserver/blob/6b08be47a6f170fe19f3d8210d42dd8da14d772c/Dockerfile#L2

The root cause of my issue was Tomcat 10. Downgrade back to Tomcat 9 fixed it, see comment https://github.com/kartoza/docker-geoserver/issues/232#issuecomment-810689167

NyakudyaA commented 3 years ago

@Toucan-Sam it should be sorted now. In production environments you should not be using latest because it can change anytime if a new version of geoserver becomes available.

Toucan-Sam commented 3 years ago

@NyakudyaA Thank you very much. Understood.

We're using the latest tag to ensure that the development environment is always running the latest versions. This allows us to test for things (eg, a migration from 2.18 to 2.19) and more or less know exactly when things are broken and before they reach production environments. Dev teams can fix what they need ASAP and when they're ready, Ops can bump the production version.

Keeping the latest tag in line with latest stable release of geoserver is ideal to keeping our workflow... flowing. :)

Not to say that it's all your responsibility. It certainly is not. For extra sensitive stuff we do builds in house of course. For everything else, we hugely appreciate your work.

EDIT: Alternatively, it might be handy to publish 2.19.x tags to let folks stay within a certain major/minor version.