data-docker镜像作为基础数据卷容器,主要用于为GeoServer和PostGIS提供持久化存储解决方案。它支持数据从零开始添加到GeoServer和PostGIS中,并确保在容器停止后数据仍能保持持久化。该镜像便于创建、共享和管理GeoNode相关的持久化数据资源,适用于需要稳定存储GeoServer配置、空间数据等持久化信息的场景。
警告:若要按照本文档执行docker命令,需确保Docker主机环境已正确设置,且Docker默认机器已启动。
注意:所有使用Docker-Machine运行容器的开发者需要进行以下环境检查。使用原生Linux系统或Docker for Mac、Docker for Windows的用户无需执行这些检查。
验证Docker-Machine基础环境,执行以下命令:
console$ docker-machine env
成功配置的环境会输出类似以下内容:
consoleexport DOCKER_TLS_VERIFY="1" export DOCKER_HOST="tcp://192.168.99.100:2376" export DOCKER_CERT_PATH="<用户主目录>/.docker/machine/machines/default" export DOCKER_MACHINE_NAME="default"
配置shell环境以应用Docker-Machine设置:
console$ eval $(docker-machine env)
使用-v选项可直接为容器创建数据卷,示例如下:
console$ docker run -d -P --name geonode-data-container -v /data geonode/geonode-data touch /data/test.txt
上述命令在新容器的/data目录创建数据卷,该卷可被共享并挂载到其他容器。数据卷会持久化存储其中的文件(如示例中的test.txt)。
也可将Docker主机的本地目录挂载到容器中,适用于测试场景,但会受限于主机目录配置,可能影响容器可移植性:
console$ docker run -d -P --name geonode-data-container -v /geonode_data/data:/data geonode/geonode-data touch /data/test.txt
注意:对于GeoNode数据,此方式无法像开发环境中执行
(venv)$ paver reset_hard那样从零开始重置数据。
数据卷容器是定义存储空间的Docker镜像,本身不运行服务进程,创建后即处于停止状态,但会保留其数据存储。
创建用于存储GeoNode持久化共享数据资源的专用容器:
console$ docker create -v /geonode-store --name geonode-data-container geonode/geonode-data /bin/true
注意:
/bin/true命令在执行成功时返回0且不执行任何操作,用于确保容器创建后正确退出并保持停止状态。
通过--volumes-from选项将数据卷容器的/geonode-store目录挂载到其他容器:
console$ docker run -d --volumes-from geonode-data-container --name geoserver geonode/geoserver
提示:删除挂载了卷的容器后,卷存储及其数据不会被删除。若需完全从文件系统中删除卷,需运行:
console$ docker rm -v geoserver
在/geoserver_data/data目录中创建包含GEOSERVER_DATA_DIR的卷:
console$ docker-compose up
console# 需要先从Docker Hub拉取geonode/geoserver:2.10.x镜像 $ docker run -d --volumes-from geoserver_data_dir --name geoserver geonode/geoserver
验证预加载的GeoServer数据目录(适用于GeoServer 2.18.2)是否正确挂载:
console$ docker exec -it geoserver ls -lart /geoserver_data/data/
成功挂载后输出类似以下内容:
consoletotal 76 drwxr-xr-x 3 root root 4096 Aug 27 16:51 workspaces -rw-r--r-- 1 root root 1547 Aug 27 16:51 wms.xml -rw-r--r-- 1 root root 2013 Aug 27 16:51 wfs.xml -rw-r--r-- 1 root root 1285 Aug 27 16:51 wcs.xml drwxr-xr-x 2 root root 4096 Aug 27 16:51 styles drwxr-xr-x 8 root root 4096 Aug 27 16:51 security drwxr-xr-x 2 root root 4096 Aug 27 16:51 printing drwxr-xr-x 2 root root 4096 Aug 27 16:51 plugIns drwxr-xr-x 2 root root 4096 Aug 27 16:51 palettes drwxr-xr-x 2 root root 4096 Aug 27 16:51 logs -rw-r--r-- 1 root root 144 Aug 27 16:51 logging.xml drwxr-xr-x 2 root root 4096 Aug 27 16:51 images -rw-r--r-- 1 root root 1111 Aug 27 16:51 gwc-gs.xml -rw-r--r-- 1 root root 1374 Aug 27 16:51 global.xml drwxr-xr-x 2 root root 4096 Aug 27 16:51 geonode drwxr-xr-x 2 root root 4096 Aug 27 16:51 demo -rw-r--r-- 1 root root 184 Aug 27 16:51 README.rst drwxr-xr-x 12 root root 4096 Aug 27 16:51 . drwxr-xr-x 7 root root4096 Aug 27 17:08 ..
以下是使用data-docker镜像的docker-compose.yml示例,该配置从Docker Hub拉取指定版本(如GeoServer-GeoNode 2.18.2)的镜像,并挂载数据目录:
yamlversion: '2' services: geoserver: build: . ports: - "8888:8080" volumes_from: # 引用包含预加载geoserver_data_dir卷的服务 - data_dir_conf data_dir_conf: image: geonode/geoserver_data:2.18.2 container_name: geoserver_data_dir # 命名数据容器 command: /bin/true volumes: - /geoserver_data/data volumes: # 引用包含预加载GeoServer数据目录的命名数据容器 geoserver_data_dir:
Docker Hub提供多个版本标签的data-docker镜像,适用于不同版本的GeoServer和GeoNode:
geonode/geoserver_data:2.9.xgeonode/geoserver_data:2.9.x-oauth2geonode/geoserver_data:2.10.xgeonode/geoserver_data:2.12.xgeonode/geoserver_data:2.13.xgeonode/geoserver_data:2.14.xgeonode/geoserver_data:2.18.2(各标签详细信息可通过Docker Hub对应链接查看)
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429