开放大厅服务器

openlobb的Python项目详细描述


#打开大厅服务器

开放大厅是大厅会议的登记册。它正在开发和测试中 在[捷克海盗党](https://www.pirati.cz)上,但以后可能被 任何政党、组织、机构,…

开放大厅现在是早期测试版。不供生产使用。

这是带有[graphql api](http://graphql.org)的register-server的核心。 通过api连接的是应用程序接口。默认Web应用程序为 可在 [开放大厅/开放大厅应用程序](https://github.com/openlobby/openlobby-app)。

寄存器建立在 [弹性搜索](https://www.elastic.co/products/elasticsearch)。现在是 用于使用自定义捷克语文本分析器以捷克语进行搜索。有 准备ElasticSearch Docker容器,捷克支持 [捷克语露天大厅](https://github.com/openlobby/openlobby-es-czech)。

##配置

配置由环境变量完成:
  • 调试-设置为任意值以启用调试模式。不要在生产中使用!
  • 密钥-长随机密钥字符串(如果不在调试模式下,则必需)
  • 数据库DSN-PostgreSQL数据库的DSN(默认值:PostgreSQL://db:db@localhost:5432/openlobby
  • 弹性搜索DSN-弹性搜索集群的DSN(默认值:http://localhost:9200
  • 站点名称-用于OpenID身份验证的站点名称(默认值:打开大厅
  • es_index-弹性搜索索引前缀(默认值:openlobby
  • 重定向uri-重定向openid connect身份验证中使用的uri(默认值:http://localhost:8010/login redirect
    • 把你运行服务器的地址放在那里,但要保持在那里/login redirect
    • 这是在openid provider上进行静态客户端注册的重定向uri

###登录快捷方式也称为预先注册的openid客户端

某些openid提供程序不允许动态客户端注册。你仍然可以 使用它们。使用重定向\u uri注册客户端,并将客户端的凭据保存到 数据库。您可以在运行/admin的管理界面中执行此操作。这是标准的 django admin(为自己创建超级用户,如/manage.py create superuser)。

##码头工人

Docker图片在Docker Hub [开放大厅/开放大厅服务器](https://hub.docker.com/r/openlobby/openlobby-server/)。 它在端口8010上公开服务器。您应该为 配置(至少密钥)。

##演示

开放式大堂的演示和说明在存储库中 [开放大厅/演示](https://github.com/openlobby/demo)。

##本地运行和开发

###先决条件

您需要安装python 3。

使用用户db和密码dblocalhost:5432上运行PostgreSQL数据库 数据库。您可以在环境变量中提供不同的地址 数据库。

运行ElasticSearch服务器 [捷克语露天大厅](https://github.com/openlobby/openlobby-es-czech) 在http://localhost:9200上。您可以在环境中提供不同的地址 变量弹性搜索。

###本地运行

克隆此存储库并运行:

  1. make init env-在dir.env中准备python virtualenv
  2. source.env/bin/activate-激活virtualenv
  3. 进行安装-以开发模式安装需求和服务器
  4. 进行迁移-运行数据库迁移并重建ElasticSearch索引
  5. 运行-在端口8010上运行开发服务器

现在您可以在 http://localhost:8010/graphql

下次你可以只做第2步和第5步。

###测试

运行:pytest

要运行完整的测试套件,您必须提供openid provider issuer url 允许客户注册。例如,您可以在本地运行keypolt服务器: docker run-e keycoplot_user=admin-e keycoplot_password=pass-p 8080:8080–rm jboss/keycoplot

登录keypolt管理控制台http://localhost:8080/auth/admin/ (作为管理员/通行证)并转到领域设置->;客户端注册->;客户端 注册策略->;受信任的主机。这里将本地主机添加到“可信 主机”,关闭“主机发送客户端注册请求必须匹配”并保存 它。

现在运行:pytest–issuer=http://localhost:8080/auth/realms/master

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

推荐PyPI第三方库


热门话题
java客户端线程挂起仿真阻止服务器在客户端设置为等待的时间内接受任何I/O   java让Eclipse更喜欢嵌套类的静态导入   java Json解析器将空值转换为0   java如何从OFBiz SECA服务返回错误   Java中的C#IEnumerable   java OpenCV 安卓 VideoWriter问题   标签更改的java侦听器   用于在文本字段中键入的java Javascript执行与sendKeys不同   java反转整数中的所有位并返回整数   如何在java中使用默认值构造属性列表?   swing Java将向量分配给JTable   java Spring引导Restcontroller作为单元测试中的内部类(webmvctest)   java如何避免布尔方法中未处理的异常?   arraylist我在java中有一个字符串表的数组列表,我想从这些表中删除空的和空的元素   java是并发请求的repo类线程安全吗?弹簧靴   java如何在Thymeleaf中创建必需的下拉列表/选择   java创建一个类型为class Matrix的方法来添加两个矩阵   java检查是否加载了aspectjweaver(或任何javaagent)