跳到主内容

服务器安装

提示

Don't want to run it yourself? Casdoor Cloud gives you a dedicated Casdoor instance that we host and keep upgraded for you, from $25/month with no per-user fees.

要求​

操作系统​

支持Windows、Linux和macOS。

构建环境​

信息

前端请使用 Yarn 1.x;用 NPM 可能导致界面样式出问题(casdoor#294)。

注意事项

如果 Go 依赖下载失败,设置 GOPROXY(例如 https://goproxy.cn/)。

数据库​

Casdoor 使用 XORM,支持以下数据库(Xorm 驱动):

  • MySQL
  • MariaDB
  • PostgreSQL
  • CockroachDB
  • SQL Server
  • Oracle
  • SQLite 3
  • TiDB

下载​

预构建二进制文件​

GitHub Releases 提供 Linux(x86_64、arm64)、macOS(x86_64、arm64)和 Windows(x86_64、arm64)的二进制文件。解压后运行 casdoor 可执行文件。其中包含网页前端和一份示例 conf/app.conf;首次运行前要设置好数据库连接(见 配置数据库)。

提示

用二进制文件快速开始

# Linux/macOS example
tar -xzf casdoor_Linux_x86_64.tar.gz
cd casdoor_Linux_x86_64
# Edit conf/app.conf with your database settings
./casdoor

从源码构建​

代码仓库:https://github.com/casdoor/casdoor(前后端在同一个仓库)。

部分描述技术栈
前端Web 界面TypeScript + React (Vite)
后端REST APIGo + Beego + XORM

克隆仓库(使用Go模块):

cd path/to/folder
git clone https://github.com/casdoor/casdoor

配置​

配置数据库​

Casdoor支持MySQL、MariaDB、PostgreSQL、CockroachDB、SQL Server、Oracle、SQLite3和TiDB。默认配置使用MySQL。

MySQL​

如果还没有名为 casdoor 的数据库,先创建一个。在 conf/app.conf 中设置连接(见 app.conf):

driverName = mysql
dataSourceName = root:123456@tcp(localhost:3306)/
dbName = casdoor

PostgreSQL​

运行前先创建数据库(例如 casdoor);xorm 要求连接字符串中包含它。 app.conf 示例:

driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor
dbName = casdoor
信息

使用 PostgreSQL 时,确保 dataSourceName 中的 dbName 不为空,并像上面的示例那样把数据库名再写一遍到 dbname 字段。

CockroachDB​

CockroachDB也可以与PostgreSQL驱动程序一起使用,并且配置与PostgreSQL相同。

driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor serial_normalization=virtual_sequence
dbName = casdoor
信息

使用 CockroachDB 时,记得像上面的示例那样在 dataSourceName 中加上 serial_normalization=virtual_sequence。否则,每当服务启动或重启时,您都会收到有关现有数据库的错误。请注意,必须在创建数据库之前添加这个。

SQLite3​

配置 SQLite3 时,app.conf 这样写:

driverName = sqlite
dataSourceName = file:casdoor.db?cache=shared
dbName = casdoor

配置文件​

后端和前端的配置项见 配置。最简配置只需在 conf/app.conf 中设置 driverName 和 dataSourceName(见 配置数据库)。

运行​

开发模式​

后端​

启动 Go 后端(默认端口 8000):

go run main.go

然后启动前端。

前端 ​

The frontend is a Vite project and runs on port 7001 by default:

cd web
yarn install
yarn start

打开 http://localhost:7001,用 built-in/admin / 123 登录。

生产模式​

后端​

构建并运行二进制文件:

对于Linux:

go build
./casdoor

适用于Windows:

go build
casdoor.exe

要从非默认路径加载配置文件,传入 --config 参数:

./casdoor --config /etc/casdoor/app.conf

--config 参数接受绝对或相对路径,并完全替代默认的 conf/app.conf 查找。

前端​

构建静态资产:

cd web
yarn install
yarn build

打开 http://localhost:8000,用 built-in/admin / 123 登录。

提示

要换端口,在 conf/app.conf 中设置 httpport 并重启后端。

端口和地址
  • 开发模式: 前端运行在 7001 端口(yarn start)。让应用指向 http://localhost:7001 来使用 Casdoor 登录页。
  • 生产模式: 前端构建后由后端在 8000 端口提供。使用 https://your-casdoor-domain(或你的反向代理地址)。

示例: Casnode 就在使用 Casdoor。开发时把 serverUrl 设为 http://localhost:7001;生产环境设为 https://door.casdoor.com。

Casnode 示例