change base image to Alpine
- change image to security patched Java Alpine; - add Makefile and .env for easier build and releasepull/27/head
parent
d151510c1e
commit
bdd62dbfac
35
Dockerfile
35
Dockerfile
|
|
@ -1,4 +1,4 @@
|
||||||
FROM ubuntu:22.04 as tomcat
|
FROM lapierre/java-alpine:11 as tomcat
|
||||||
|
|
||||||
ARG TOMCAT_VERSION=9.0.75
|
ARG TOMCAT_VERSION=9.0.75
|
||||||
ARG CORS_ENABLED=false
|
ARG CORS_ENABLED=false
|
||||||
|
|
@ -26,27 +26,18 @@ ENV CATALINA_OPTS="\$EXTRA_JAVA_OPTS \
|
||||||
-Dsun.java2d.renderer=sun.java2d.marlin.DMarlinRenderingEngine \
|
-Dsun.java2d.renderer=sun.java2d.marlin.DMarlinRenderingEngine \
|
||||||
-Dorg.geotools.coverage.jaiext.enabled=true"
|
-Dorg.geotools.coverage.jaiext.enabled=true"
|
||||||
|
|
||||||
# init
|
|
||||||
RUN apt update \
|
|
||||||
&& apt -y upgrade \
|
|
||||||
&& apt install -y --no-install-recommends openssl unzip gdal-bin wget curl openjdk-11-jdk \
|
|
||||||
&& apt clean \
|
|
||||||
&& rm -rf /var/cache/apt/* \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
WORKDIR /opt/
|
WORKDIR /opt/
|
||||||
|
|
||||||
RUN wget -q https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin/apache-tomcat-${TOMCAT_VERSION}.tar.gz \
|
RUN wget -q https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin/apache-tomcat-${TOMCAT_VERSION}.tar.gz \
|
||||||
&& tar xf apache-tomcat-${TOMCAT_VERSION}.tar.gz \
|
&& tar xf apache-tomcat-${TOMCAT_VERSION}.tar.gz \
|
||||||
&& rm apache-tomcat-${TOMCAT_VERSION}.tar.gz \
|
&& rm apache-tomcat-${TOMCAT_VERSION}.tar.gz \
|
||||||
&& rm -rf /opt/apache-tomcat-${TOMCAT_VERSION}/webapps/ROOT \
|
&& rm -rf /opt/apache-tomcat-${TOMCAT_VERSION}/webapps/ROOT \
|
||||||
&& rm -rf /opt/apache-tomcat-${TOMCAT_VERSION}/webapps/docs \
|
&& rm -rf /opt/apache-tomcat-${TOMCAT_VERSION}/webapps/docs \
|
||||||
&& rm -rf /opt/apache-tomcat-${TOMCAT_VERSION}/webapps/examples
|
&& rm -rf /opt/apache-tomcat-${TOMCAT_VERSION}/webapps/examples \
|
||||||
|
&& ln -s $CATALINA_HOME /opt/apache-tomcat
|
||||||
|
|
||||||
# cleanup
|
# cleanup
|
||||||
RUN apt purge -y \
|
RUN rm -rf /tmp/*
|
||||||
&& apt autoremove --purge -y \
|
|
||||||
&& rm -rf /tmp/*
|
|
||||||
|
|
||||||
FROM tomcat as download
|
FROM tomcat as download
|
||||||
|
|
||||||
|
|
@ -59,10 +50,10 @@ ENV GEOSERVER_BUILD=$GS_BUILD
|
||||||
WORKDIR /tmp
|
WORKDIR /tmp
|
||||||
|
|
||||||
RUN echo "Downloading GeoServer ${GS_VERSION} ${GS_BUILD}" \
|
RUN echo "Downloading GeoServer ${GS_VERSION} ${GS_BUILD}" \
|
||||||
&& wget -q -O /tmp/geoserver.zip $WAR_ZIP_URL \
|
&& wget -q -O /tmp/geoserver.zip $WAR_ZIP_URL \
|
||||||
&& unzip geoserver.zip geoserver.war -d /tmp/ \
|
&& unzip geoserver.zip geoserver.war -d /tmp/ \
|
||||||
&& unzip -q /tmp/geoserver.war -d /tmp/geoserver \
|
&& unzip -q /tmp/geoserver.war -d /tmp/geoserver \
|
||||||
&& rm /tmp/geoserver.war
|
&& rm /tmp/geoserver.war
|
||||||
|
|
||||||
FROM tomcat as install
|
FROM tomcat as install
|
||||||
|
|
||||||
|
|
@ -98,7 +89,7 @@ RUN echo "Installing GeoServer $GS_VERSION $GS_BUILD"
|
||||||
COPY --from=download /tmp/geoserver $CATALINA_HOME/webapps/geoserver
|
COPY --from=download /tmp/geoserver $CATALINA_HOME/webapps/geoserver
|
||||||
|
|
||||||
RUN mv $CATALINA_HOME/webapps/geoserver/WEB-INF/lib/marlin-*.jar $CATALINA_HOME/lib/marlin.jar \
|
RUN mv $CATALINA_HOME/webapps/geoserver/WEB-INF/lib/marlin-*.jar $CATALINA_HOME/lib/marlin.jar \
|
||||||
&& mkdir -p $GEOSERVER_DATA_DIR
|
&& mkdir -p $GEOSERVER_DATA_DIR
|
||||||
|
|
||||||
COPY $GS_DATA_PATH $GEOSERVER_DATA_DIR
|
COPY $GS_DATA_PATH $GEOSERVER_DATA_DIR
|
||||||
COPY $ADDITIONAL_LIBS_PATH $GEOSERVER_LIB_DIR
|
COPY $ADDITIONAL_LIBS_PATH $GEOSERVER_LIB_DIR
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
include .env
|
||||||
|
|
||||||
|
IMAGE_NAME=geoserver-docker.osgeo.org/geoserver
|
||||||
|
|
||||||
|
docker:
|
||||||
|
docker build --build-arg CORS_ALLOWED_METHODS=GET,POST,PUT,HEAD,OPTIONS --build-arg CORS_ENABLED=true --build-arg GS_VERSION=$(GS_VERSION) --build-arg TOMCAT_VERSION=$(TOMCAT_VERSION) --pull -t $(IMAGE_NAME):$(IMAGE_VERSION) .
|
||||||
|
docker tag $(IMAGE_NAME):$(IMAGE_VERSION) $(IMAGE_NAME):latest
|
||||||
|
push:
|
||||||
|
docker push $(IMAGE_NAME):$(IMAGE_VERSION)
|
||||||
|
docker push $(IMAGE_NAME):latest
|
||||||
|
|
||||||
|
|
@ -4,11 +4,11 @@ services:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
args:
|
args:
|
||||||
- GEOSERVER_VERSION=2.22.0
|
- GEOSERVER_VERSION=${GS_VERSION}
|
||||||
- CORS_ENABLED=true
|
- CORS_ENABLED=true
|
||||||
- CORS_ALLOWED_METHODS=GET,POST,PUT,HEAD,OPTIONS
|
- CORS_ALLOWED_METHODS=GET,POST,PUT,HEAD,OPTIONS
|
||||||
ports:
|
ports:
|
||||||
- 80:8080
|
- "80:8080"
|
||||||
environment:
|
environment:
|
||||||
- INSTALL_EXTENSIONS=true
|
- INSTALL_EXTENSIONS=true
|
||||||
- STABLE_EXTENSIONS=wps,csw
|
- STABLE_EXTENSIONS=wps,csw
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue