Commit 47ae64f5 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Reorganiza Dockerfile, limpia restos antiguos

parent c83e9131
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
resources/*
!resources/*.zip
!resources/*.jar
!resources/*.deb
!resources/*.tar.gz
+4 −58
Original line number Diff line number Diff line
@@ -53,59 +53,7 @@ container-scanning:
  artifacts:
    paths: [gl-sast-container-report.json]

deploy-geoserver-master-dev:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-master
    STATUS_CHECK_DELAY: 500
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-master.tmpl.yml:docker-compose.geoserver-master.dev.yml
    GEOSERVER_SUBDOMAIN: ${DEV_GEOSERVER_ADMIN_SUBDOMAIN}
    GEOSERVER_PASS: ${DEV_GEOSERVER_PASS}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh gis-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
      GEOSERVER_PASS=${GEOSERVER_PASS}
  environment:
    name: geoserver-master-dev
    url: https://${DEV_GEOSERVER_ADMIN_SUBDOMAIN}.${DEV_PUBLIC_HOSTNAME}
  only:
    - dev
  when: manual

deploy-geoserver-slave-dev:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: gis
    SERVICES_TO_CHECK: gis_geoserver-slave
    STATUS_CHECK_DELAY: 500
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.geoserver-slave.tmpl.yml:docker-compose.geoserver-slave.dev.yml
    GEOSERVER_SUBDOMAIN: ${DEV_GEOSERVER_SUBDOMAIN}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh gis-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      GEOSERVER_SUBDOMAIN=${GEOSERVER_SUBDOMAIN} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: geoserver-slave-dev
    url: https://${DEV_GEOSERVER_SUBDOMAIN}.${DEV_PUBLIC_HOSTNAME}
  only:
    - dev
  when: manual

deploy-geoserver-master-supporting-branch:
deploy-geoserver-master-supporting-branch-develop:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
@@ -132,10 +80,9 @@ deploy-geoserver-master-supporting-branch:
    - branches
  except:
    - master
    - dev
  when: manual

deploy-geoserver-slave-supporting-branch:
deploy-geoserver-slave-supporting-branch-develop:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
@@ -160,10 +107,9 @@ deploy-geoserver-slave-supporting-branch:
    - branches
  except:
    - master
    - dev
  when: manual

deploy-geoserver-master-pro:
deploy-geoserver-master-stable-branch-production:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
@@ -190,7 +136,7 @@ deploy-geoserver-master-pro:
    - master
  when: manual

deploy-geoserver-slave-pro:
deploy-geoserver-slave-stable-branch-production:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
+36 −29
Original line number Diff line number Diff line
@@ -5,8 +5,8 @@ LABEL maintainer="info@redmic.es"
ENV DEBIAN_FRONTEND="noninteractive" \
	GEOSERVER_PLUGINS="css inspire libjpeg-turbo csw wps pyramid vectortiles netcdf gdal importer netcdf-out" \
	GEOSERVER_COMMUNITY_PLUGINS="" \
	GEOSERVER_MAJOR_VERSION="2.13" \
	GEOSERVER_MINOR_VERSION="3" \
	GEOSERVER_MAJOR_VERSION="2.14" \
	GEOSERVER_MINOR_VERSION="1" \
	GEOSERVER_DATA_DIR="/var/geoserver/data" \
	GEOSERVER_HOME="${CATALINA_HOME}/webapps/geoserver" \
	GEOSERVER_LOG_DIR="/var/log/geoserver" \
@@ -24,62 +24,60 @@ ENV DEBIAN_FRONTEND="noninteractive" \
		-XX:+AggressiveOpts \
		-XX:+UseCGroupMemoryLimitForHeap \
		-Djava.library.path=/usr/share/java:/opt/libjpeg-turbo/lib64:/usr/lib/jni" \
	GEOSERVER_PORT="8080" \
	GOOGLE_FONTS="Open%20Sans Roboto Lato Ubuntu" \
	NOTO_FONTS="NotoSans-unhinted NotoSerif-unhinted NotoMono-hinted" \
	GEOSERVER_PORT="8080"
	GDAL_DATA="/usr/share/gdal/2.1" \
	GDAL_VERSION="2.1.2" \
	TURBO_JPEG_VERSION="1.5.3" \
	TEMP_PATH="/tmp/resources" \
	MARLIN_VERSION="0.9.3" \
	JAI_VERSION="1_1_3" \
	IMAGE_IO_VERSION="1_1"

ENV GEOSERVER_VERSION="${GEOSERVER_MAJOR_VERSION}.${GEOSERVER_MINOR_VERSION}" \
	GEOSERVER_LOG_LOCATION="${GEOSERVER_LOG_DIR}/geoserver.log" \
	GDAL_DATA="/usr/share/gdal/2.1"

	# El espacio final es necesario, corrige bug en script de arranque
ENV MARLIN_JAR="${GEOSERVER_HOME}/lib/marlin-${MARLIN_VERSION}-Unsafe.jar "
ARG TURBO_JPEG_VERSION=1.5.3
ARG TEMP_PATH=/tmp/resources
ARG MARLIN_VERSION=0.9.3
ARG JAI_VERSION=1_1_3
ARG IMAGE_IO_VERSION=1_1
ARG GDAL_VERSION="2.1.2"
	MARLIN_JAR="${GEOSERVER_HOME}/lib/marlin-${MARLIN_VERSION}-Unsafe.jar "

COPY ./scripts /

# Install extra fonts to use with sld font markers
RUN mkdir -p "${TEMP_PATH}" "${GEOSERVER_DATA_DIR}" "${GEOSERVER_LOG_DIR}" && \
	apt-get update && \
	apt-get install -y --no-install-recommends fonts-cantarell \
#		lmodern \
#		ttf-aenigma \
#		ttf-georgewilliams \
#		ttf-bitstream-vera \
#		ttf-sjfonts \
#		tv-fonts \
#		fonts-lyx \
	apt-get install -y --no-install-recommends \
		fonts-cantarell \
		unzip \
		libtcnative-1 \
#		libgdal20 \
		libgdal-java \
		libnetcdf11 \
		libnetcdf-c++4 \
		netcdf-bin \
		dnsutils && \
	# Copy resources
	#
	# Install Google Noto fonts
	#
	mkdir -p /usr/share/fonts/truetype/noto && \
	for FONT in ${NOTO_FONTS}; \
	do \
		curl -L https://noto-website-2.storage.googleapis.com/pkgs/${FONT}.zip --output ${TEMP_PATH}/${FONT}.zip && \
		unzip -o ${TEMP_PATH}/${FONT}.zip -d /usr/share/fonts/truetype/noto ; \
	done && \
	#
	# Install Google Fonts
	#
	for FONT in ${GOOGLE_FONTS}; \
	do \
		mkdir -p /usr/share/fonts/truetype/${FONT} && \
		curl -L "https://fonts.google.com/download?family=${FONT}" --output ${TEMP_PATH}/${FONT}.zip && \
		unzip -o ${TEMP_PATH}/${FONT}.zip -d /usr/share/fonts/truetype/${FONT} ; \
	done && \
	#
	# Clean Tomcat
	#
	rm -rf ${CATALINA_HOME}/webapps/* && \
	#
	# Install GeoServer
	#
	FILENAME="geoserver-${GEOSERVER_VERSION}-war.zip" && \
	URL="https://sourceforge.net/projects/geoserver/files/GeoServer/${GEOSERVER_VERSION}" && \
	curl -L ${URL}/${FILENAME} -o ${TEMP_PATH}/${FILENAME} && \
@@ -92,17 +90,23 @@ RUN mkdir -p "${TEMP_PATH}" "${GEOSERVER_DATA_DIR}" "${GEOSERVER_LOG_DIR}" && \
		${GEOSERVER_HOME}/data/gwc-layers/* \
		${GEOSERVER_HOME}/data/layergroups/* \
		${GEOSERVER_HOME}/data/workspaces/* && \
	#
	# Install Marlin
	#
	FILENAME=$(echo "marlin-${MARLIN_VERSION}-Unsafe.jar") && \
	URL="https://github.com/bourgesl/marlin-renderer/releases/download/v0_9_1//${FILENAME}" && \
	curl -L ${URL} --output ${TEMP_PATH}/${FILENAME} && \
	cp ${TEMP_PATH}/${FILENAME} ${GEOSERVER_HOME}/lib && \
	#
	# Install Turbo JPEG
	#
	TURBO_JPEG_FILENAME=$(echo "libjpeg-turbo-official_${TURBO_JPEG_VERSION}_amd64.deb") && \
	URL="https://sourceforge.net/projects/libjpeg-turbo/files/${TURBO_JPEG_VERSION}/${TURBO_JPEG_FILENAME}" && \
	curl -L ${URL} --output ${TEMP_PATH}/${TURBO_JPEG_FILENAME} && \
	dpkg -i ${TEMP_PATH}/${TURBO_JPEG_FILENAME} && \
	#
	# Install JAI & Image IO
	#
	rm ${GEOSERVER_HOME}/WEB-INF/lib/jai_*jar && \
	JAI_FILENAME=$(echo "jai-${JAI_VERSION}-lib-linux-amd64.tar.gz") && \
	URL="http://download.java.net/media/jai/builds/release/${JAI_VERSION}/${JAI_FILENAME}" && \
@@ -116,7 +120,9 @@ RUN mkdir -p "${TEMP_PATH}" "${GEOSERVER_DATA_DIR}" "${GEOSERVER_LOG_DIR}" && \
	tar xvfz ${TEMP_PATH}/${IMAGE_IO_FILENAME} -C ${TEMP_PATH} && \
	mv ${TEMP_PATH}/jai_imageio-${IMAGE_IO_VERSION}/lib/*.jar ${JAVA_HOME}/lib/ext/ && \
	mv ${TEMP_PATH}/jai_imageio-${IMAGE_IO_VERSION}/lib/*.so ${JAVA_HOME}/lib/amd64/ && \
	#
	# Install GeoServer Plugins
	#
	URL="https://sourceforge.net/projects/geoserver/files/GeoServer/${GEOSERVER_VERSION}/extensions" && \
	for PLUGIN in ${GEOSERVER_PLUGINS}; \
	do \
@@ -124,7 +130,9 @@ RUN mkdir -p "${TEMP_PATH}" "${GEOSERVER_DATA_DIR}" "${GEOSERVER_LOG_DIR}" && \
		curl -L "${URL}/${FILENAME}" -o "${TEMP_PATH}/${FILENAME}" && \
		unzip -o "${TEMP_PATH}/${FILENAME}" -d "${GEOSERVER_HOME}/WEB-INF/lib/" ; \
	done && \
	#
	# Install GeoServer Community Plugins
	#
	URL="http://ares.opengeo.org/geoserver/master/community-latest/" && \
	for PLUGIN in ${GEOSERVER_COMMUNITY_PLUGINS}; \
	do \
@@ -135,15 +143,14 @@ RUN mkdir -p "${TEMP_PATH}" "${GEOSERVER_DATA_DIR}" "${GEOSERVER_LOG_DIR}" && \
	rm ${GEOSERVER_HOME}/WEB-INF/lib/imageio-ext-gdal-bindings-*.jar && \
	ln -s /usr/share/java/gdal.jar \
		"${GEOSERVER_HOME}/WEB-INF/lib/imageio-ext-gdal-bindings-${GDAL_VERSION}.jar" && \
	#
	# Clean
	rm -fr ${TEMP_PATH} && \
	rm -rf /var/lib/apt/lists/* && \
	apt-get clean
	#
	rm -rf ${TEMP_PATH} && \
	rm -rf /var/lib/apt/lists/*

EXPOSE ${GEOSERVER_PORT}

RUN mv /libs/*.jar ${JAVA_HOME}/lib/security/

ENTRYPOINT ["/docker-entrypoint.sh"]

CMD ["catalina.sh", "run"]
 No newline at end of file

deploy/docker-compose.dev.yml

deleted100644 → 0
+0 −29
Original line number Diff line number Diff line
version: '3.5'

services:
  geoserver:
    ports:
      - target: ${GEOSERVER_PORT}
        published: 8095
        mode: host
    deploy:
      mode: replicated
      replicas: 2
      labels:
        traefik.port: "${GEOSERVER_PORT}"
        traefik.docker.network: traefik-net
        traefik.frontend.rule: "Host:${GEOSERVER_SUBDOMAIN}.${PUBLIC_HOSTNAME};PathPrefix:/geoserver"
        traefik.backend: geoserver
      restart_policy:
        delay: 1m
        window: 3m
      resources:
        limits:
          cpus: '0.75'
          memory: 1G
        reservations:
          memory: 820M

volumes:
  geoserver-vol:
    name: geoserver-vol
+1 −1
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ services:
    volumes:
      - geoserver-vol:/var/geoserver/data
    healthcheck:
      test: curl --fail http://localhost:${GEOSERVER_PORT}/geoserver || exit 1
      test: curl --fail --silent http://localhost:${GEOSERVER_PORT}/geoserver
      interval: 30s
      timeout: 10s
      retries: 3
Loading