海洋水瓶座。

ocean-aquarius的Python项目详细描述


banner

水瓶座

? Aquarius provides an off-chain database store for metadata about data assets. It's part of the Ocean Protocol software stack.

注:水瓶座以前被称为提供者

“水瓶座是十二宫星座,位于摩羯座和双鱼座之间。它的名字是拉丁语的“水载体”或“杯载体”。水瓶座是黄道带上最古老的星座之一(太阳的明显路径)。“

Docker Build StatusTravis (.com)Codacy coveragePyPIGitHub contributors


有龙和乌贼这是在alpha状态,你可以预期会遇到问题。如果你碰到他们,请打开a new issue_


对于水瓶座操作员

如果你正在开发一个市场,你会希望在本地运行宝瓶座和其他几个组件,最简单的方法是使用驳船。请参阅the Barge repository中的说明。

对于水瓶座API用户

海洋协议文档站点有documentation about the Aquarius API。注意,它显示了当前与nile testnet一起部署的版本的文档。要获取其他版本的文档,页面顶部有一个“过去版本”链接。

如果你有水瓶座在本地运行,你可以在 http://localhost:5000/api/v1/docs或者 http://0.0.0.0:5000/api/v1/docs

提示1:如果这不起作用,那么尝试https

提示2:如果你的浏览器在顶部显示了一个夸张的标题,但是上面写着“未能加载规范”,那么我们发现,在chrome中,如果我们转到chrome://flags/#allow-insecure-localhost并将其切换到enabled,然后重新启动chrome,它就工作了。

如果您想进一步了解元数据的本体,可以在 OEP-8

对于水瓶座开发者

一般海洋开发文件

有关ocean的python代码样式和相关“元”开发人员文档的信息,请参见the oceanprotocol/dev-ocean repository

本地运行,用于开发和测试

首先,克隆此存储库:

git clone git@github.com:oceanprotocol/aquarius.git
cd aquarius/

然后运行mongodb数据库,这是水瓶座的要求mongodb可以使用official documentation中的指令直接安装。或者如果安装了docker,则可以运行:

docker run -d -p 27017:27017 mongo

注意,它运行MongoDB,但水瓶座也可以使用BigChainDB或ElasticSearch。如果要运行ElasticSearch或BigchainDB,请更新文件config.ini,并使用首选方法运行数据库引擎

然后安装宝瓶座的操作系统级别要求:

sudo apt update
sudo apt install python3-dev python3.7-dev libssl-dev

(注意:在编写本文时,python3-dev是针对python 3.6的。python3.7-dev如果您想在本地使用python 3.7进行测试,那么就需要{}。BigChainDB需要libssl-dev。)

在安装aquarius的python包需求之前,您应该创建并激活一个virtualenv(或等效的)。

最简单的方法是:

pip install -r requirements.txt
exportFLASK_APP=aquarius/run.py
exportCONFIG_FILE=config.ini
flask run

将使用http(即不是ssl/tls)。

运行flask应用程序的正确方法是使用应用服务器,如gunicorn。这允许您使用ssl/tls运行。 您可以通过执行以下操作生成一些用于测试的证书:

openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -keyout key.pem -days 365

当它要求公共名(cn)时,回答localhost

然后编辑配置文件config.ini,以便:

aquarius.url = http://localhost:5000

然后执行此命令:

gunicorn --certfile cert.pem --keyfile key.pem -b 0.0.0.0:5000 -w 1 aquarius.run:app

配置

可以使用CONFIG_FILE环境变量(推荐)传递配置,也可以在CONFIG.ini文件中查找配置

在配置中,现在有两个部分:

  • oceandb:包含要连接到oceandb的不同值。您可以找到有关如何使用oceandbhere的更多信息。
  • 资源:在本节中,我们将展示宝瓶座将被部署到的url。
[resources]aquarius.url = http://localhost:5000

测试

通过travis设置自动测试,执行tox。 我们的测试使用pytest框架。

新版本

bumpversion.sh脚本帮助提升项目版本。可以使用{major|minor|patch}作为第一个参数来执行脚本,从而相应地提高版本。

许可证

版权所有2018海洋协议基金会有限公司

有执照的在apache许可下,版本2.0(“许可”); 除非符合许可证,否则您不能使用此文件。 您可以在

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则软件 根据许可证分发是按“原样”分发的, 无任何明示或默示的保证或条件。 有关管理权限的特定语言和 许可下的限制。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用prepared语句在oracle中插入日期   对点具有双重值的java   使用多个通配符的java请求映射   java Springboot为什么要设置springbootstartertomcat   除了对JavaBean的请求之外,还使用servletContext的servlet   java如何清除OCSID。返回到池的连接时的CLIENTID JDBC客户端信息属性   将整型数组转换为光栅Java   java使用对象引用作为互斥锁   java为什么在编程语言中使用sin函数返回奇怪的sin值不像计算器   java如何将JButton链接到对象并调用相关方法   php用Java发送POST数据   导航属性的java模拟加载   java多个活动错误Android试图对空对象引用调用虚拟方法“”   java Android更改ActionBar文本颜色   如何使用带有java反射且不带开关的parant引用创建子类