三分钟搞定风场数据服务部署!Docker镜像一键启动指南
**引言:**在前两篇文章中,我们介绍了风场数据的基本概念、数据规格以及API接口能力。今天,我们将带您用最简单的方式完成风场数据服务的本地化部署——只需一个Docker镜像,三分钟即可启动!
风场数据服务API全解析:从自动抓取到实时裁剪,一站式解决方案
一、获取Docker镜像
我们提供了完整的Docker镜像,包含了所有必要的依赖和环境配置,让您无需手动配置任何环境,开箱即用!
🎁 如何获取镜像
关注微信公众号 YouGIS顽石
私信发送关键词:风场数据服务
系统将自动回复镜像下载链接
请在24小时内完成下载,链接有效期为24小时
📦 镜像信息
格式: tar.gz(通过 docker save 导出)
版本: v1.2
Python环境: Python 3.6.x
包含内容: 所有依赖库、配置文件、数据转换工具
二、加载Docker镜像
获取到镜像文件后,使用以下命令加载镜像到本地Docker环境:
docker load -i yougis-windy-server.tar.gz
加载成功后,可以使用以下命令查看镜像:
docker images | grep yougis-windy-server
您应该能看到名为 yougis-windy-server:v1.2 的镜像。
三、启动容器
使用以下命令启动容器:
docker run -d \
--name yougis-windy-server \
--network=host \
--restart=always \
-v /app/windfield:/app/windfield \
yougis-windy-server:v1.2
📋 参数说明
-d:后台运行容器--name yougis-windy-server:指定容器名称--network=host:使用主机网络模式,容器与主机共享网络栈--restart=always:容器异常退出时自动重启-v /app/windfield:/app/windfield:将主机目录/app/windfield挂载到容器内,用于持久化存储风场数据
四、配置Nginx反向代理
⚠️ 重要说明:
容器内的服务使用 uWSGI 运行,监听0.0.0.0:8000端口。由于使用的是 uWSGI 协议(TCP),需要通过 Nginx 进行代理,而不是使用普通的 HTTP proxy。
4.1 uWSGI配置说明
容器内的 uwsgi.ini 配置文件内容如下:
[uwsgi]
module = run:app
master = true
processes = 3
chdir = /app
socket = /app/uwsgi.sock
socket = 0.0.0.0:8000
logto = /app/uwsgi.log
chmod-socket = 660
vacuum = true
plugins = python3
关键配置说明:
socket = 0.0.0.0:8000:uWSGI监听8000端口processes = 3:启动3个工作进程module = run:app:指定Flask应用入口
4.2 Nginx配置
在Nginx配置文件中添加以下配置:
location /yougis-windy-server/ {
include uwsgi_params;
uwsgi_pass 0.0.0.0:8000;
uwsgi_param Host $host;
uwsgi_param X-Real-IP $remote_addr;
uwsgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
uwsgi_param X-Forwarded-Proto $scheme;
}
⚠️ 注意事项:
使用
uwsgi_pass而不是proxy_pass确保Nginx已安装
uwsgi_params文件(通常在/etc/nginx/目录下)配置完成后,使用
nginx -t检查配置语法使用
nginx -s reload重载配置
五、验证服务
容器启动后,可以通过以下方式验证服务是否正常运行:
步骤1:检查容器状态
运行以下命令查看容器是否正常运行:
docker ps | grep yougis-windy-server
如果看到容器状态为 Up,说明容器已成功启动。
步骤2:测试服务探活接口
使用 curl 命令测试服务探活接口:
curl http://localhost/yougis-windy-server/windfield/api/v1.0/is-ok
如果返回以下JSON,说明服务正常:
{
"success": true,
"message": "Service Valid!",
"version": "v1.0.3"
}
步骤3:验证数据自动抓取
容器启动后,服务会自动抓取历史数据。您可以通过以下方式验证数据是否正常抓取:
查看主机挂载目录 /app/windfield,检查是否生成了数据文件:
ls -lh /app/windfield
如果看到类似以下文件结构,说明数据抓取正常:
/app/windfield/
├── noaa/
│ ├── global/
│ │ └── 2026/03/
│ │ └── 2026033012.json
│ └── cn/
│ └── 2026/03/
│ └── 2026033012.json
└── common/
├── global/
│ └── 2026/03/
│ └── 2026033012.json
└── cn/
└── 2026/03/
└── 2026033012.json
💡 提示:
首次启动时,服务会自动抓取历史数据,可能需要等待一段时间
数据文件命名格式:
yyyymmddHH.json(如:2026033012.json表示2026年3月30日12时的数据)如果长时间没有生成文件,请查看容器日志排查问题
步骤4:测试数据补采接口
使用 crawl-windy 接口手动补采指定时间段的数据:
curl "http://localhost/yougis-windy-server/windfield/api/v1.0/crawl-windy?type=noaa,common&area=global,cn&hour=2026033012"
参数说明:
type:数据来源,可选值noaa、common或noaa,commonarea:数据区域,可选值global、cn或global,cnhour:数据时间,格式yyyymmddHH(单个)、yyyymmddHH,yyyymmddHH(多个)或yyyymmddHH-yyyymmddHH(范围)
如果返回以下JSON,说明补采成功:
{
"success": true,
"message": "Crawl Windy Succeed"
}
步骤5:测试数据查询接口
使用 show-windy 接口获取风场数据:
curl "http://localhost/yougis-windy-server/windfield/api/v1.0/show-windy/common/global/2026033012.json"
接口格式:
/yougis-windy-server/windfield/api/v1.0/show-windy/{type}/{area}/{filename}
参数说明:
type:数据来源,可选值noaa、commonarea:数据区域,可选值global(全球)、cn(中国)或省份拼音(如zj、bj)filename:文件名,格式yyyymmddHH.json
如果返回包含 header 和 data 的JSON数组,说明数据查询成功。
🎉 本地服务验证完成!
恭喜!您的风场数据服务已经成功部署并通过验证。服务会自动抓取和处理数据,为您提供稳定可靠的风场数据API服务。
六、使用在线服务
💡 温馨提示:
如果您不想自己部署服务,也可以直接使用我们已经部署好的在线服务,无需任何配置,开箱即用!
在线服务地址
我们提供了完整的在线服务,您可以直接使用:
在测试页面中,您可以测试所有API接口,包括服务探活、数据补采和数据查询等功能。
可视化页面
查看风场数据的可视化效果:
可视化页面展示了全球风场的实时动态,支持缩放、拖拽等交互操作。
🚀 开始使用:
现在您可以选择部署本地服务或直接使用在线服务,赶快开始体验风场数据服务吧!
七、常见问题
7.1 容器无法启动
问题: 容器启动失败或立即退出。
解决方法:
使用
docker logs yougis-windy-server查看容器日志检查端口8000是否被占用
确保主机目录
/app/windfield存在且有写入权限
7.2 Nginx代理失败
问题: Nginx返回502错误。
解决方法:
确认使用的是
uwsgi_pass而不是proxy_pass检查uWSGI服务是否正常运行(查看容器日志)
确认Nginx配置语法正确(使用
nginx -t)
7.3 数据无法访问
问题: API接口返回错误或无数据。
解决方法:
首次启动时,服务会自动抓取历史数据,可能需要等待一段时间
检查网络连接是否正常
查看容器日志了解详细错误信息
八、服务说明
风场数据服务提供以下核心功能:
🌍 数据源支持
NOAA:美国国家海洋和大气管理局数据,时间分辨率6小时
真气网:中国区域数据,时间分辨率1小时
📊 数据区域
全球数据:覆盖全球范围的风场数据
中国数据:覆盖中国区域的高精度数据
省份数据:支持全国各省份的数据查询
🔄 自动更新
服务每小时自动抓取最新数据
支持数据补采功能,可手动补采历史数据
自动清理过期数据,节省存储空间
九、相关文章
如果您想了解更多关于风场数据服务的信息,请参考以下文章:
十、总结
本文介绍了如何使用Docker镜像快速部署风场数据服务。通过简单的几步操作,您就可以在本地搭建起完整的风场数据服务,无需手动配置复杂的依赖环境。
服务部署后,会自动抓取和处理数据,为您提供稳定可靠的风场数据API服务。您可以通过API接口集成到自己的应用中,也可以通过可视化页面查看风场动态。
🚀 开始使用:
现在您已经了解了如何部署风场数据服务,赶快动手试试吧!如果在部署过程中遇到问题,欢迎通过微信公众号 YouGIS顽石 联系我们。
📌 相关链接:
API测试页面:https://yougis.com.cn/yougis-windy-server/api-test.html
可视化页面:https://yougis.com.cn/yougis-windy-server/show-windy.html
微信公众号:YouGIS顽石
标签: #风场数据 #Docker部署 #快速部署 #本地化部署 #部署指南 #uWSGI #Nginx

评论区