
3liz/qgis-wps该镜像提供基于QGIS 3的Web处理服务(WPS),用于将地理处理算法、脚本和模型通过Web服务形式对外提供。支持并行处理、异步结果存储、自定义处理路径和权限配置,适用于需要通过Web服务提供地理数据处理能力的GIS应用场景。
创建如下docker-compose.yml文件进行部署:
yamlversion: '3.8' services: wps: image: 3liz/qgis-wps:<version_tag> environment: QGSWPS_SERVER_PARALLELPROCESSES: '2' # 并行进程数量 QGSWPS_SERVER_LOGSTORAGE: REDIS # 日志存储方式(REDIS或其他) QGSWPS_REDIS_HOST: redis # Redis服务主机名 QGSWPS_PROCESSING_PROVIDERS_MODULE_PATH: /processing # 处理算法提供者路径 QGSWPS_CACHE_ROOTDIR: /projects # 缓存根目录 QGSWPS_SERVER_WORKDIR: /srv/data # 服务器工作目录(结果存储) QGSWPS_USER: {uid}:{gid} # 运行用户ID和组ID QGSWPS_LOGLEVEL: DEBUG # 日志级别(DEBUG/INFO/WARNING/ERROR) volumes: - /path/to/processing:/processing # 挂载处理算法提供者目录 - /path/to/projects:/projects # 挂载QGIS项目目录 - /path/to/processing/output/dir:/srv/data # 挂载处理结果输出目录 - /path/to/qgis/home:/home/qgis # 可选,挂载QGIS配置文件目录 ports: - 127.0.0.1:8888:8080 # 端口映射(主机:容器) redis: image: redis:5-alpine # Redis服务镜像,用于日志和结果存储
/path/to/projects: 必须包含QGIS项目文件,作为处理算法的工作项目/path/to/processing: 包含处理算法提供者、脚本或模型,作为WPS服务的可用进程/path/to/processing/output/dir: 存储算法执行后的结果数据/path/to/qgis/home: 可选,可包含QGIS配置文件,用于自定义QGIS运行环境| 环境变量 | 描述 | 示例 |
|---|---|---|
| QGSWPS_SERVER_PARALLELPROCESSES | 并行处理进程数量 | '2' |
| QGSWPS_SERVER_LOGSTORAGE | 日志存储方式 | REDIS |
| QGSWPS_REDIS_HOST | Redis服务主机名(当LOGSTORAGE为REDIS时) | redis |
| QGSWPS_PROCESSING_PROVIDERS_MODULE_PATH | 处理算法提供者模块路径 | /processing |
| QGSWPS_CACHE_ROOTDIR | 缓存根目录路径 | /projects |
| QGSWPS_SERVER_WORKDIR | 服务器工作目录,存储处理结果 | /srv/data |
| QGSWPS_USER | 运行服务的用户ID和组ID,需匹配挂载卷的所有者 | 1000:1000 |
| QGSWPS_LOGLEVEL | 日志级别 | DEBUG |
需将{uid}:{gid}替换为挂载卷的实际所有者和组ID,确保服务有权限访问挂载的目录和文件。可通过id命令获取当前用户的UID和GID。
Redis服务用于存储日志和异步任务结果状态。若不提供Redis服务,将使用fakeredis服务,但不支持容器重启后的结果状态持久化。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务