服务器安装

安装要求

操作系统

支持所有操作系统(Linux, Windows 和 macOS)

环境

info

我们强烈建议您使用 Yarn 1。 运行 & Casdoor 前端,使用 NPM可能会导致UI 风格问题。 更多详细信息见: Casdoor#294

数据库

Casdoor使用 XORM 与数据库进行对接。 基于 Xorm 驱动程序支持, 当前支持的数据库包括:

  • MySQL
  • MariaDB
  • PostgreSQL
  • SQL 服务器
  • Oracle
  • SQLite 3
  • TiDB

下载

Casdoor的源代码托管在 GitHub: https://github.com/casdoor/casdoor 。 Go 后端代码和 React 前端代码都在单个仓库中。

名称描述语言源代码
前端Casdoor的网页前端界面JavaScript + Reacthttps://github.com/casdoor/casdoor/tree/master/web
后端Casdoor的ResTful API 后端Golang + Beego + XORMhttps://github.com/casdoor/casdoor

Casdoor支持 Go模块。 要下载代码,您直接通过git克隆仓库就可以了:

  1. cd 路径/to/文件夹
  2. git clone https://github.com/casdoor/casdoor

配置

可以通过单个文件配置Casdoor: conf/app.conf,其内容默认是:

  1. appname = casdoor
  2. httpport = 8000
  3. runmodel = dev
  4. Sessionon = true
  5. copyrequestbody = true
  6. driverName = mysql
  7. dataSourceName = root:123456@tcp(localhost:3306)/
  8. dbName = casdoor
  9. redisEndpoint =
  10. defaultStorageProvider =
  11. isCloudinet = falsal
  12. authState = "casdoor"
  13. httpProxy = "127. .0.1:10808"
  14. 校验CodeTimeout = 10
  15. initScore = 2000
  16. logPostOnly = true
  17. origin = "https://door.casbin.com"
  • appname 是应用程序名称,目前没有实际使用
  • http端口 是您后端应用程序正在监听的端口
  • 运行模式devprod
  • SessionOn 控制是否启用会话,默认为使用。
  • 驱动名称, 数据源名称dbname 此前已启用,请参阅 配置
  • 使用 Proxy 设置代理端口,因为我们有谷歌相关的服务,这些服务将在某些地区受到网络限制
  • 验证 CodeTimeout 设置验证码到期时间。 到期后,用户需要再次获取

尽管有所有可配置的字段,作为初学者, 您只需要修改两个项目: 驱动名称 and datasSourceName 基于您的数据库。 此数据库将被Casdoor用于存储所有数据,包括用户、组织、应用程序等等。

  • 设置数据库(MySQL):

    Casdoor 将把它的用户、节点和主题信息存储在指定的 MySQL 数据库中: casdoor, 如果不存在,将创建它。 DB 连接字符串可以在 https://github.com/casdoor/casdoor/blob/master/conf/app.conf 上指定

    1. 驱动器名称 = mysql
    2. datasSourceName = root:123456@tcp(localhost:3306)/
    3. dbName = catdoor
  • 设置数据库(Postgres):

    由于我们必须选择使用 xorm 打开 Postgres 时的数据库,您应该在运行 Casdoor 之前手动准备一个数据库。

    假设您已经准备好了一个叫做 Casdoor的数据库,你可以像这样指定 app.conf

    1. 驱动器名称 = postgres
    2. dataSourceName = "user=postgres password=xxx sslmode=disable dbname="
    3. dbName = casdoor

    请注意: 您可以在 datasSourceName中添加 Postgres 参数 但请确保 数据源名称dbname= 结尾。 或者数据库适配器可能在您启动Casdoor时崩溃。

  • 其它数据库…

运行

当前有两种方法可以启动,您可以根据自己的情况选择一个。

开发模式

后端

Casdoor后端默认在 8000 端口运行。 您可以通过以下命令启动后端:

  1. 前往运行 main.go

服务器运行成功后,我们可以启动前端部件。

前端

Casdoor的前端是一个非常典型的 Create-React-App (CRA) 项目。 默认情况下它在端口 7001 运行。 使用以下命令来运行前端:

  1. cd web
  2. yarn installing
  3. yarn starn

在浏览器中访问: http://localhost:7001 。 使用默认的全局管理帐户登录星座仪表板: 内置/管理

  1. 管理员
  2. 123

生产模式

后端

构建可可执行的 Casdoor 转到后端代码并启动它。

对于Linux:

  1. 去构建
  2. ./腰门

Windows:

  1. 去构建
  2. casdoor.exe

前端

构建Casdoor前端代码为静态资源 (.html、.js, .css 文件):

  1. cd web
  2. yarn install
  3. yarn building

在您的浏览器中访问: http://localhost:8000 。 使用默认的全局管理帐户登录Casdoor控制面板: 内置/管理

  1. 管理员
  2. 123
要使用另一个端口, 请编辑 conf/app.conf 然后修改 http端口, 再重启Go后端。 :::

dev 环境中,前端由 yarn 运行 端口7001 所以,如果您想去Casto登录页面, 您需要设置Casdoor 链接为 http://localhost:7001

prod 环境中,前端文件首先由 yarn building 构建,并在 8000端口运行, 如果您想要打开Casdoor登录页面, 您需要设置 Casdoor 链接为 http://SERVER\_IP:8000 (如果您正在使用逆向代理) 您需要将链接设置为 您的域

以我们的官方论坛 Casnode 作为示例:

Casnode 使用 Casdoor 来处理身份验证。

当我们在 dev 环境中测试Casnode 时,我们将 serverUrl 设置为 http://localhost:7001。 所以当我们使用 Casdoor 测试登录和注册功能时,它将会转到本地主机7001,而本地端口是Casdoor 端口。

当我们将Casnode 放入 prod 环境时,我们将 serverUrl 设置为 https://door。 asbin.com,用户可以使用Casdoor登录或注册。

Casnode 示例 :::