Server installation
Requisitos
Operating system
Windows, Linux, and macOS are supported.
Build environment
https://goproxy.cn/). :::Banco de dados
Casdoor uses XORM and supports these databases (Xorm drivers):
MySQLMariaDBPostgreSQLCockroachDBSQL ServerOracleSQLite 3TiDB
Baixar
Pre-built binaries
GitHub Releases provide binaries for Linux (x86_64, arm64), macOS (x86_64, arm64), and Windows (x86_64, arm64). Extract the archive and run the casdoor binary. It includes the web frontend and a sample conf/app.conf; set the database connection before first run (see Configure database).
# 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
Build from source
Repository: https://github.com/casdoor/casdoor (backend and frontend in one repo).
| Part | Descrição | Stack |
|---|---|---|
| Frontend | Web UI | JavaScript + React |
| Backend | REST API | Go + Beego + XORM |
Clone the repo (Go Modules are used):
cd path/to/folder
git clone https://github.com/casdoor/casdoor
Configuração
Configure database
Casdoor supports MySQL, MariaDB, PostgreSQL, CockroachDB, SQL Server, Oracle, SQLite3, and TiDB. Default config uses MySQL.
MySQL
Create a database named casdoor if it does not exist. Set the connection in conf/app.conf (see app.conf):
driverName = mysql
dataSourceName = root:123456@tcp(localhost:3306)/
dbName = casdoor
PostgreSQL
Create a database (e.g. casdoor) before running; xorm requires it in the connection string. Example app.conf:
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor
dbName = casdoor
dataSourceName tenha um dbName não vazio e também duplicar o nome do banco de dados para o campo dbname como mostrado no exemplo acima. :::CockroachDB
CockroachDB também pode ser usado com o driver do PostgreSQL e tem a mesma configuração que o PostgreSQL.
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor serial_normalization=virtual_sequence
dbName = casdoor
serial_normalization=virtual_sequence ao dataSourceName como mostrado no exemplo acima. Caso contrário, você receberá um erro sobre um banco de dados existente sempre que o serviço iniciar ou reiniciar. Observe que isso deve ser adicionado antes de o banco de dados ser criado. :::SQLite3
Para configurar o SQLite3, você deve especificar app.conf assim:
driverName = sqlite
dataSourceName = file:casdoor.db?cache=shared
dbName = casdoor
Config files
Backend and frontend options are documented in Configuration. For a minimal setup, set driverName and dataSourceName in conf/app.conf (see Configure database).
Executar
Development mode
Backend
Start the Go backend (default port 8000):
go run main.go
Then start the frontend.
Frontend
The frontend is a Create React App project and runs on port 7001 by default:
cd web
yarn install
yarn start
Open http://localhost:7001 and sign in as built-in/admin / 123.
Production mode
Backend
Build and run the binary:
Para Linux:
go build
./casdoor
Para Windows:
go build
casdoor.exe
Frontend
Build static assets:
cd web
yarn install
yarn build
Open http://localhost:8000 and sign in as built-in/admin / 123.
httpport in conf/app.conf and restart the backend. :::- Dev: Frontend runs on port 7001 (
yarn start). Point apps at http://localhost:7001 for the Casdoor login page. - Prod: Frontend is built and served by the backend on port 8000. Use https://your-casdoor-domain (or your reverse proxy URL). :::
Example: Casnode uses Casdoor. In dev, set serverUrl to http://localhost:7001; in prod, set it to https://door.casdoor.com.
