2 votos

Servidor QGIS - Docker - Múltiples proyectos

Actualmente estoy tratando de mejorar la arquitectura del servidor de mi empresa con la ayuda de Docker. He conseguido ejecutar con éxito un contenedor Docker de esta imagen: https://hub.docker.com/r/camptocamp/qgis-server . Sin embargo, el contenedor sólo permite servir un proyecto por defecto.

¿Alguien sabe cómo servir múltiples proyectos con un contenedor Docker del servidor qgis?

He intentado ejecutar un contenedor docker de esta imagen: https://github.com/kartoza/docker-qgis-server . Sin embargo, no funcionó. Supongo que el mejor enfoque es probablemente cambiar algunos archivos de configuración en el contenedor docker del primer contenedor mencionado, pero no tengo idea de qué archivos.

0 votos

¿Puedes explicar por qué no puedes añadir muchos proyectos en la iimage que ya estás utilizando? Si utiliza la línea de comandos proporcionada docker run -d -p 8380:80 --volume=$PWD/etc/qgisserver:/etc/qgisserver camptocamp/qgis-server puede poner todos los proyectos QGIS que quiera en el repositorio actual y llamarlos con el comando MAP=/etc/qgisserver/myproject_2.qgs . No lo he intentado, sólo he leído la documentación sobre hub.docker.com/r/camptocamp/qgis-server No utilice QGIS_PROJECT_FILE variable.

0 votos

Sí, esto suena lógico. Sin embargo, por algunas razones siempre me muestra el proyecto por defecto - no importa lo que solicite con el parámetro MAP, por ejemplo, si abro: http://localhost:8380/?SERVICE=WMS&REQUEST=GetCapabilities en el Navegador se muestran las capacidades del archivo project.qgs que es lo esperado en este caso. Sin embargo, si abro: http://localhost:8380/?SERVICE=WMS&REQUEST=GetCapabilities&M‌​ap=/etc/qgisserver/p‌​roject2.qgs También se muestran las capacidades del archivo project.qgs, que no son las esperadas. Esto es cierto si el archivo existe y también si el archivo no existe.

0 votos

¿Puedes probar con MAP= ? Por si acaso. Tengo este problema desde la semana pasada: github.com/qgis/QGIS/issues/32354 que ha sido arreglado.

2voto

BillRo Puntos 16

Ahora he encontrado una solución que funciona para mi problema. Sin embargo, para ser honesto, no estoy muy convencido de esta solución (pero está trabajando). Actualmente he utilizado QGIS Server 2.18 pero creo que debería funcionar de forma similar con una versión de QGIS 3. Mis pasos:

  • git clon https://github.com/kartoza/docker-qgis-server
  • cree una carpeta con el nombre "project" en el directorio 2.18 pero es importante que NO incluya un archivo "project.qgs". Copie todos los archivos del proyecto en ese directorio
  • En el Dockerfile en el directorio 2.18 añade una línea: COPIAR proyecto /proyecto/ y borrar la línea: ENV QGIS_PROJECT_FILE /proyecto/project.qgs
  • En el archivo \2.18\runtime\etc\apache2\conf -disponible \qgis.conf borrar línea 5 ( PassEnv QGIS_PROJECT_FILE)
  • Finalmente construye y ejecuta el contenedor docker como se explica en el repositorio git

Además, es importante mencionar que no he podido conseguir que esto funcione en una máquina anfitriona de Windows. Una de las razones se explica aquí: https://blogs.msdn.microsoft.com/stevelasker/2016/09/22/running-scripts-in-a-docker-container-from-windows-cr-or-crlf/ . Pero incluso después de aplicar los consejos del post del bloque, no he podido ejecutarlo en Windows (ni idea de por qué). Así que lo hice en una máquina linux.

0voto

Jacob Puntos 111

Llego tarde a la fiesta, pero lo he solucionado con este contenedor: https://hub.docker.com/r/openquake/qgis-server .

Sólo tienes que poner tus archivos de proyecto QGIS en directorios separados, montar el directorio que contiene tus proyectos como un volumen en el contenedor, y seguir una convención básica para obtener WMS/WFS para tus proyectos.

Estructura del directorio del proyecto:

data 
 |
 |-- foo
      |-- foo.qgs
 |-- bar
      |-- bar.qgs

Ejemplos de puntos finales:

0 votos

No puedo instalar el contenedor. Tengo buenas habilidades en SIG de escritorio, pero no en servidores. Estoy empezando a utilizar contenedores Docker y pilas Portainer, pero todavía tengo pocas habilidades. ¿Podría por favor, escribir una guía paso a paso sobre la instalación de un servidor Docker Qgis en un NAS Synology? Cualquier ayuda sería realmente apreciada. Estoy planeando en la ejecución de un pequeño servicio para mi grupo de espeleología para servir a los lugares de la cueva en mi área. Utilizo proxy inverso para las conexiones https. Saludos cordiales, Fer

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X