配置文件

简介

Wayne 的默认配置是 app.conf。实践中用户可以通过在 app.conf 中追加如下字段来包含自定义配置:

  1. $ include "dev.conf"

基本配置

参考 beego 配置

  • appname: App 名称
  • httpport: 应用监听端口
  • runmode: 运行模式,开发模式(dev)或者生产模式(prod)
  • autorender: 是否模板自动渲染,默认值为 true,对于 API 类型的应用,应用需要把该选项设置为 false,不需要渲染模板。
  • copyrequestbody: 是否允许在 HTTP 请求时,返回原始请求体数据字节,默认为 false (GET or HEAD or 上传文件请求除外)。
  • EnableDocs: 是否开启文档内置功能,默认是 false
  • EnableAdmin: 是否开启进程内监控模块,默认 false 关闭。
  • StaticDir: 静态文件目录设置,此处设置为 public:static
  • ShowSql: Log 是否记录 SQL 语句,默认 false
    登录基本配置

  • EnableDBLogin: 是否启用数据库登录

  • RsaPrivateKey: RsaPrivate 文件路径,用于 JWT Token 加密。
  • RsaPublicKey: RsaPublicKey 文件路径,用于 JWT Token 解密。
  • TokenLifeTime: Token 有效期,秒。
    Oauth 2.0 登录配置
  1. $ [auth.qihoo]
  2. $ enabled = false
  3. $ client_id = client
  4. $ client_secret = secret
  5. $ auth_url = https://example.com/oauth2/v1/authorize
  6. $ token_url = https://example.com/oauth2/v1/token
  7. $ api_url = https://example.com/oauth2/v1/userinfo
配置中 auth.qihoo 模块即为基于 Oauth 2.0 标准的授权登录,如需使用 Oauth 2.0 登录,请配置该模块。

LDAP 登录配置

  1. $ [auth.ldap]
  2. $ enabled = false
  3. $ ldap_url = ldap://127.0.0.1
  4. $ ldap_search_dn = "cn=admin,dc=example,dc=com"
  5. $ ldap_search_password = admin
  6. $ ldap_base_dn = "dc=example,dc=com"
  7. $ ldap_filter =
  8. $ ldap_uid = cn
  9. $ ldap_scope = 2
  10. $ ldap_connection_timeout = 30

数据库配置

  • DBTns: 数据库 Tns,示例:tcp(127.0.0.1:3306)
  • DBName: 数据库名称 示例: wayne
  • DBUser: 数据库用户名,示例: root
  • DBPasswd: 数据库密码,示例:root
  • DBLoc: 数据库 Location,示例:Asia%2FShanghai
  • DBConnTTL: 数据库心跳时间,秒 示例:30
    Web Shell

  • appKey: 生成 Web Shell Token 的 Key,线上一定要修改此值
    Demo 相关

  • DemoGroupId: 用于添加默认命名空间权限。 默认为 1,访客

  • DemoNamespaceId: Demo 命名空间 ID,默认 1
    日志相关

  • LogLevel: 日志级别,示例: 4

  • SentryEnable: 是否启用 Sentry,如果启用 Sentry,请设置此值为 true
  • SentryDSN: SentryDSN
  • SentryLogLevel: 发送 Sentry 的日志级别
    Robin 相关
Robin 为手动管理 PV 和存储卷的组件,如果没有此组件,EnableRobin 设置为 false 即可 (目前暂无 Robin 社区版,可以关闭。)
  • EnableRobin: 是否启用 Robin 相关功能
    开放平台相关

  • EnableApiKeys: 是否启用开放平台相关功能
    Bus 相关

Bus 组件负责处理 wayne 全部的 发布-订阅 模型的任务,例如账单、审计日志、webhook 等。
  • BusEnable: 是否启用 Bus。
  • BusRabbitMQURL: RabbitMQURL 地址,示例: amqp://guest:guest@rabbitmq:5672
    Webhook 相关

  • EnableWebhook: 是否启用 webhook,如果启用,请设置为 true

  • WebhookClientTimeout: webhook 回调的超时时间
  • WebhookClientWindowSize: 允许同时回调的 webhook 窗口大小,额外的回调请求会放在等待队列中
    上线相关配置
采用 Canary/Production 上线模式如果项目 metaData 配置了{"mode":"beta"},则点击项目详情跳转到 beta 域名

数据库热配置

数据库配置作为配置文件配置的一种补充,可以实现热更新,支持的配置如下:

  • system.title: 系统 Nav 显示的 title

  • system.image-prefix: Deployment,StatefulSet 等允许的镜像前缀,适用于适用私有仓库并且仅允许从特定私有仓库拉取镜像的场景。使用正则,例如:^gcr.io/.* 表示仅允许拉取 gcr.io/ 开头的镜像

  • system.monitor-uri: 系统监控地址,用于从平台直接跳转 Grafana 监控平台,不如为空则不显示跳转监控按钮。URL 中的 {{app.name}} 将会自动替换为当前 App 名称。例如:此项配置为 https://github.com/{{app.name}} ,点击项目名称为 wayne 的查看监控按钮会自动跳转到 https://github.com/wayne

  • system.api-name-generate-rule: 资源名称生成规则,默认所有的资源名称都会自动拼接 App 名称,例如 App 名称为 wayne,创建部署时部署名称会自动拼接 wayne-前缀。可选值:join,none .join 表示自动拼接,none 表示保持原来的值。

360 搜索 私有云团队 提供技术支持

原文: https://github.com/Qihoo360/wayne/wiki/Wayne-dev-configuration