qgis/qgisQGIS是一款开源地理信息系统(GIS),旨在提供免费、易用的GIS数据查看、编辑和分析功能。本Docker镜像是QGIS官方提供的容器化部署方案,可简化QGIS的安装与运行流程,适用于各类需要快速部署GIS环境的场景,无需复杂的本地依赖配置。
QGIS基于GNU通用公共许可证(GPL)Version 2或更高版本发布,允许用户自由获取、修改和分发源代码,确保长期免费可用。
通过Docker Hub拉取官方镜像:
bashdocker pull qgis/qgis
QGIS为GUI应用,容器运行需配置图形界面转发,以下为常见方案:
通过挂载主机X11 socket实现图形界面显示:
bashdocker run -it --rm \ -e DISPLAY=$DISPLAY \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -v /path/to/local/gis-data:/data \ # 挂载本地GIS数据目录 -v /path/to/qgis-config:/root/.qgis # 持久化QGIS配置 qgis/qgis
参数说明:
-e DISPLAY=$DISPLAY:传递主机显示变量-v /tmp/.X11-unix:/tmp/.X11-unix:共享X11 socket,实现图形界面输出/path/to/local/gis-data:本地GIS数据目录,容器内路径为/data/path/to/qgis-config:本地配置目录,用于保存QGIS设置若主机无图形界面(如服务器),可通过VNC访问容器内QGIS:
bashdocker run -it --rm \ -p 5900:5900 \ # 映射VNC端口 -v /path/to/local/gis-data:/data \ qgis/qgis \ sh -c "apt-get update && apt-get install -y tightvncserver && vncserver :0 -geometry 1280x720 -depth 24 -nopw"
启动后,使用VNC客户端连接 localhost:5900 即可访问QGIS界面。
创建docker-compose.yml实现一键部署:
yamlversion: '3' services: qgis: image: qgis/qgis container_name: qgis environment: - DISPLAY=${DISPLAY} - USER_ID=1000 # 匹配主机用户ID,避免权限冲突 - GROUP_ID=1000 volumes: - /tmp/.X11-unix:/tmp/.X11-unix - ./gis-data:/data # 本地数据目录(相对路径) - ./qgis-config:/root/.qgis # 配置持久化 network_mode: "host" # 简化网络配置(可选) restart: unless-stopped
启动服务:
bashdocker-compose up -d
USER_ID环境变量指定与主机一致的用户ID,避免文件读写权限问题。qgis/doc/index.html(HTML格式)和同目录下的PDF格式,可通过docker exec进入容器查看。--cpus=4 -m 8g)。[FEATURE]标签并说明功能详情manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务