GIS WebServer SE

GIS WebServer SE – ГИС для построения геопорталов различного назначения.

  • Автоматизирует публикацию изменяющихся пространственных данных на основе web-сервисов.

  • Создает новые слои данных и позволяет их редактировать.

  • Предоставляет доступ к данным пользователя с любого компьютера.

  • Создает тематические карты и картограммы.

  • Отображает 3D модель по открытым векторным картам, матрицам высот и снимкам местности без подготовки модели.

  • Выполняет поиск кратчайших маршрутов по графу дорог.

Примечание

Для функционирования требуется GIS WebService SE

Как запустить образ

docker run -d --name giswebserverse \
-p 8080:80 \
registry.gisserver.ru/giswebserverse/giswebserverse-apache:latest

Откройте браузер и перейдите по адресу:

http://localhost:8080/GISWebServerSE/index.php

Запуск образа с данными для публикации

docker run -d --name giswebserverse \
-p 8080:80 \
-v gwsse:/var/Panorama/gwsse \
registry.gisserver.ru/giswebserverse/giswebserverse-apache:latest

Поддерживаемые тома(volume)

  • gwsse (конфигурационные файлы, метаданные) - /var/Panorama/gwsse

Типы лицензий

  • Фиксированная аппаратная лицензия - USB ключ

  • Плавающая аппаратная лицензия - сервер лицензий с USB ключом

Фиксированная аппаратная лицензия предполагает наличие электронного ключа USB на каждый образ.

Плавающая аппаратная лицензия предполагает наличие в локальной сети одного электронного ключа USB и запушенного сервера лицензии, позволяющего одновременно выполнять оплаченное число копий сервиса на любых компьютерах путем поочередного подключения.

Примечание

Лицензия настраивается в GIS WebService SE

Пробрасывание volume в систему

Создать директорию проекта и перейти в неё.

Создать файл скрипта make-volume.sh для создания конфигурационных файлов.

#!/usr/bin/env bash
set -euo pipefail

DEFAULT_IMAGE="registry.gisserver.ru/giswebserverse/giswebserverse-apache:latest"

if [[ "${1:-}" == "-h" || "${1:-}" == "--help" ]]; then
   echo "Используется образ: $0 [IMAGE]"
   echo
   echo "IMAGE — имя Docker-образа или образ с digest."
   echo "Если IMAGE не указан, используется образ по умолчанию:"
   echo "  $DEFAULT_IMAGE"
   exit 0
fi

# Имя загруженного Docker образа (если не загружен, загурузиться автоматически)
IMAGE="${1:-$DEFAULT_IMAGE}"
TEMP_CONTAINER="astra-init-$(date +%s%N)"
TARGET_DIR="./"

echo "🔍 Проверяем наличие образа $IMAGE..."
if ! docker image inspect "$IMAGE" &>/dev/null; then
   echo "⬇️  Образ не найден в локальном кеше. Загрузка..."
   docker pull "$IMAGE"
fi

echo "📁 Создание дирректорий..."
mkdir -p "$TARGET_DIR"/gwsse

# Проверка: если данные уже есть, пропускаем копирование (защита от перезаписи)
if [ "$(ls -A "$TARGET_DIR/gwsse" 2>/dev/null)" ]; then
   echo "⚠️  Директории уже содержат файлы. Копирование пропущено."
   echo "💡 Чтобы перезаписать данные, удалите содержимое $TARGET_DIR и запустите скрипт снова."
   exit 0
fi

echo "🐳 Запуск временного контейнера в фоновом режиме..."
# tail -f /dev/null позволяет контейнеру работать бесконечно без выполнения CMD образа
docker run -d --name "$TEMP_CONTAINER" "$IMAGE" tail -f /dev/null

# Гарантируем очистку контейнера при любом выходе из скрипта (успех или ошибка)
cleanup() {
   echo "🧹 Останавка и удаление временного контейнера..."
   docker rm -f "$TEMP_CONTAINER" &>/dev/null || true
}
trap cleanup EXIT

echo "⏳ Копирование файлов из контейнера..."
sleep 1 # Небольшая задержка для стабильности ФС

docker cp "$TEMP_CONTAINER:/var/Panorama/gwsse/." "$TARGET_DIR/gwsse/"

echo "✅ Копирование завершено успешно."
echo "📦 Итоговая структура:"
chmod -R 777 "$TARGET_DIR"
tree -L 3 "$TARGET_DIR" 2>/dev/null || find "$TARGET_DIR" -type f | head -40

Запустить файл make-volume.sh

./make-volume.sh registry.gisserver.ru/giswebserverse/giswebserverse-apache:latest

Скрипт скачает образ контейнера, запустит временный контейнер, скопирует необходимые конфигурационные файлы в текущую папку и удалит временный контейнер.

Запуск через Docker Compose файл docker-compose.yml

Создать в директории проекта файл docker-compose.yml

services:
  giswebserver:
   image: registry.gisserver.ru/giswebserverse/giswebserverse-apache:latest
   container_name: giswebserverse
   restart: unless-stopped
   ports:
     - "8088:80"
   volumes:
     - ./gwsse:/var/Panorama/gwsse:rw

Запустить контейнер

docker compose up -d

Контакты: panorama@gisinfo.ru

URL: https://gisinfo.ru/spread/spread.htm

License: Лицензионный договор