Dockerfile 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. FROM tomcat:9-jdk11
  2. LABEL maintainer="Alessandro Parma<alessandro.parma@geo-solutions.it>"
  3. ENV DEBIAN_FRONTEND noninteractive
  4. ENV CATALINA_BASE "$CATALINA_HOME"
  5. ENV GEOSERVER_HOME="/var/geoserver"
  6. ENV GEOSERVER_LOG_DIR="${GEOSERVER_HOME}/logs"
  7. ENV GEOSERVER_DATA_DIR="${GEOSERVER_HOME}/datadir"
  8. ENV \
  9. GEOSERVER_LOG_LOCATION="${GEOSERVER_LOG_DIR}/geoserver.log" \
  10. GEOWEBCACHE_CONFIG_DIR="${GEOSERVER_DATA_DIR}/gwc" \
  11. GEOWEBCACHE_CACHE_DIR="${GEOSERVER_HOME}/gwc_cache_dir"
  12. RUN mkdir -p \
  13. "${GEOSERVER_DATA_DIR}" \
  14. "${GEOSERVER_LOG_DIR}" \
  15. "${GEOWEBCACHE_CACHE_DIR}" \
  16. "${GEOWEBCACHE_CONFIG_DIR}"
  17. # override at run time as needed JAVA_OPTS
  18. ENV JAVA_OPTS="-Xms1024m -Xmx1024m"
  19. # Optionally remove Tomcat manager, docs, and examples
  20. ARG TOMCAT_EXTRAS=false
  21. ENV TOMCAT_EXTRAS "$TOMCAT_EXTRAS"
  22. RUN \
  23. if [ "$TOMCAT_EXTRAS" = false ]; then \
  24. rm -rfv "${CATALINA_HOME}/webapps/*" \
  25. ; fi
  26. # local dir, tar or remore URLs
  27. ARG GEOSERVER_DATA_DIR_SRC="./.placeholder"
  28. ENV GEOSERVER_DATA_DIR_SRC="${GEOSERVER_DATA_DIR_SRC}"
  29. ADD "${GEOSERVER_DATA_DIR_SRC}" "${GEOSERVER_DATA_DIR}"
  30. # accepts local files and URLs. Tar(s) are automatically extracted
  31. ARG GEOSERVER_WEBAPP_SRC="./.placeholder"
  32. ENV GEOSERVER_WEBAPP_SRC="${GEOSERVER_WEBAPP_SRC}"
  33. ADD "${GEOSERVER_WEBAPP_SRC}" "${CATALINA_BASE}/webapps/"
  34. # zip files require explicit extracion
  35. RUN \
  36. cd "${CATALINA_BASE}/webapps/"; \
  37. if [ "${GEOSERVER_WEBAPP_SRC##*.}" = "zip" ]; then \
  38. unzip "./*zip"; \
  39. rm ./*zip; \
  40. fi
  41. WORKDIR "$CATALINA_BASE"
  42. ENV TERM xterm
  43. EXPOSE 8080