
tumgis/3dcitydb-web-map该仓库包含基于官方Node.js Docker镜像构建的3D City Database Web-Map-Client(3D Web客户端)的Dockerfile。获取3D Web客户端Docker镜像请访问tumgis/3dcitydb-web-map DockerHub页面。如需快速上手,可查看"快速开始"部分。
所有镜像标签列表可在DockerHub的tumgis/3dcitydb-web-map/tags查看。镜像标签由多个标识组成,说明如下:
使用docker pull tumgis/3dcitydb-web-map:TAG下载指定TAG的最新镜像到系统。例如:docker pull tumgis/3dcitydb-web-map:v1.7.1。
也可查看3D City Database和*3D City Database Web Feature Service (WFS)*的Docker镜像:
注意: 本仓库所有内容均处于开发阶段。如遇到任何问题或有建议/改进,请通过此处创建issue反馈。
3DCityDB-Web-Map-Client是3DCityDB的基于Web的前端,用于高性能3D可视化和交互式探索任意大型CityGML语义3D城市模型。它使用Cesium Virtual Globe作为3D地理可视化引擎,基于HTML5和WebGL提供硬件加速和跨平台功能,无需额外插件即可在Web浏览器中显示3D图形内容。
3DCityDB-Web-Map-Client的主要功能和特性如下:
!3DCityDB
3DCityDB官方主页 3DCityDB Github CityGML 3DCityDB和CityGML实践教程
本节介绍如何快速轻松地运行3DCityDB-Web-Map-Client容器。
在系统上安装Docker。
这是必需步骤。各操作系统的下载和详细说明可在[***]
使用docker run运行3D Web客户端Docker镜像。使用-p <主机端口:容器端口>开关指定3D Web客户端在主机系统上的监听端口。例如,若要在默认http端口=80访问3D Web客户端,使用-p 80:8000。
bashdocker run -dit --name 3dwebmap-container -p 80:8000 tumgis/3dcitydb-web-map
容器启动后,可通过任何常见Web浏览器访问Docker主机上的3D Web客户端。若使用上述端口设置在本地运行容器,登录页面可通过以下地址访问:
http://localhost/ 或 [***]
3DCityDB-Web-Map-Client Docker镜像允许托管要在客户端中使用的数据。所有对运行中3D Web客户端容器的/var/www/data/目录可见的数据将在数据列表中列出,并可用于客户端创建Web可视化。使数据对该目录可用的最佳方式是使用所谓的绑定挂载,即将主机目录映射到容器目录。有关绑定挂载和其他可能选项的更多信息,可查看Docker的数据存储和持久性概述。
以下示例说明如何托管3DCityDB-Web-Map-Client和示例数据集。
假设已使用3DCityDB导入/导出工具创建了一些用于测试的glTF数据。若未创建,可使用此处提供的测试数据集。本示例假设测试数据集存储在Docker主机的/home/docker/data/目录:
text$ ls -lh /home/docker/data/ -rw-r--r-- 1 root root 9.1K Mar 15 18:36 Railway_Scene_LoD3.json -rw-r--r-- 1 root root 1.9K Mar 15 18:36 Railway_Scene_LoD3.kml -rw-r--r-- 1 root root 316 Mar 15 18:36 Railway_Scene_LoD3_collada_MasterJSON.json drwxr-xr-x 3 root root 4.0K Mar 15 18:36 Tiles
要启动3DCityDB-Web-Map-Client Docker容器并将/home/docker/data/主机目录绑定挂载到/var/www/data/容器目录,运行:
bashdocker run -dit --name 3dwebmap-container -p 80:8000 \ -v /home/docker/data/:/var/www/data/ \ tumgis/3dcitydb-web-map
注意:
上述示例中,长命令使用Bash(\)或CMD(^)的行继续符拆分为多行以提高可读性。
数据现在可在数据列表中使用(例如http://myDockerHost/data/)。使用浏览器的“复制链接地址”功能复制3D Web客户端所需的URL。
!数据列表视图
要从本仓库的Dockerfile构建3DCityDB-Web-Map-Client Docker镜像,需从本仓库下载源代码并运行docker build命令。按照以下步骤构建3DCityDB-Web-Map-Client Docker镜像,或使用build.sh脚本。
bash# 1. 使用git下载源代码 git clone https://github.com/tum-gis/3dcitydb-web-map-docker # 2. 进入刚克隆的源代码文件夹 cd 3dcitydb-web-map-docker # 3. 构建标记为例如3dcitydb-web-map的Docker镜像 docker build -t tumgis/3dcitydb-web-map .
构建成功后,即可按照上述说明运行镜像。要列出所有本地可用镜像,运行docker images。
要使用自定义Tomcat基础镜像、特定3DCityDB WFS版本或自定义Web应用上下文路径构建Docker镜像,需使用docker build --build-arg参数。
| 参数名称 | 描述 | 默认值 |
|---|---|---|
| baseimage_tag | 要使用的Node.js镜像标签。所有可用标签列表见此处。 | 10 |
| webmapclient_version | 要构建的3DCityDB-Web-Map-Client版本。可使用3DCityDB-Web-Map-Client GitHub仓库的任何分支名称或标签。 | v1.7.1 |
注意:
构建过程目前已使用node:10基础镜像和3DCityDB-Web-Map-Client的v1.7.1版本测试通过。
构建示例:
bashdocker build \ --build-arg "baseimage_tag=9-slim" \ --build-arg "webmapclient_version=master" \ -t tumgis/3dcitydb-web-map:9-slim-master .
bash# 进入alpine目录 cd alpine # 使用目录中的dockerfile构建 docker build \ --build-arg "baseimage_tag=21-alpine" \ --build-arg "webmapclient_version=v2.0.0" \ -t tumgis/3dcitydb-web-map:alpine-v2.0.0 .
推送到DockerHub:
bashdocker push tumgis/3dcitydb-web-map:alpine-v2.0.0
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务