Instalação do Servidor
Requisitos
Sistema Operacional
All major operating systems are supported, including Windows, Linux, and macOS.
Ambiente
We strongly recommend using Yarn 1.x to run and build the Casdoor frontend. Usar NPM pode causar problemas de estilo da UI. Para mais detalhes, veja: casdoor#294.
If your network fails to directly sync Go dependency packages successfully, you need to use a Go proxy by configuring the GOPROXY environment variable. Sugerimos fortemente o uso de: https://goproxy.cn/
Banco de dados
Casdoor usa XORM para se comunicar com o banco de dados. Based on Xorm Drivers Support, Casdoor currently provides support for the following databases:
MySQLMariaDBPostgreSQLCockroachDBSQL ServerOracleSQLite 3TiDB
Baixar
O código-fonte do Casdoor está hospedado no GitHub: https://github.com/casdoor/casdoor. Tanto o código backend em Go quanto o código frontend em React estão contidos em um único repositório.
| Nome | Descrição | Idioma | Código-fonte |
|---|---|---|---|
| Frontend | UI de frontend web para Casdoor | JavaScript + React | https://github.com/casdoor/casdoor/tree/master/web |
| Backend | Backend de API RESTful para Casdoor | Golang + Beego + XORM | https://github.com/casdoor/casdoor |
Casdoor suporta Go Modules. Para baixar o código, basta clonar o código usando git:
cd path/to/folder
git clone https://github.com/casdoor/casdoor
Configuração
Configurar Banco de Dados
Casdoor suporta MySQL, MSSQL, SQLite3 e PostgreSQL. Por padrão, o Casdoor usa MySQL.
MySQL
Casdoor armazena informações de usuário, nó e tópico em um banco de dados MySQL chamado casdoor. Se o banco de dados não existir, ele deve ser criado manualmente. A string de conexão do DB pode ser especificada em: https://github.com/casdoor/casdoor/blob/master/conf/app.conf
driverName = mysql
dataSourceName = root:123456@tcp(localhost:3306)/
dbName = casdoor
PostgreSQL
Before running Casdoor, you need to manually prepare a database for PostgreSQL, as Casdoor requires a database to be selected when opening Postgres with xorm.
Supondo que você já tenha preparado um banco de dados chamado casdoor, você deve especificar app.conf assim:
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
SQLite3
Para configurar o SQLite3, você deve especificar app.conf assim:
driverName = sqlite
dataSourceName = file:casdoor.db?cache=shared
dbName = casdoor
Configuration Files
Casdoor can be configured via configuration files for both the backend and frontend. For a complete reference of all configuration options, see the Configuration File documentation.
For basic setup, you typically only need to modify driverName and dataSourceName in the conf/app.conf file based on your database (see Configure Database).
Executar
Atualmente, existem dois métodos para iniciar, e você pode escolher um de acordo com sua situação.
Modo de Desenvolvimento
Backend
O backend Go do Casdoor roda na porta 8000 por padrão. Você pode iniciar o backend Go com o seguinte comando:
go run main.go
Depois que o servidor estiver rodando com sucesso, você pode iniciar a parte do frontend.
Frontend
O frontend do Casdoor é um projeto muito clássico Create-React-App (CRA). Ele roda na porta 7001 por padrão. Use os seguintes comandos para executar o frontend:
cd web
yarn install
yarn start
Visite http://localhost:7001 no seu navegador. Faça login no painel do Casdoor com a conta de administrador global padrão: built-in/admin.
admin
123
Modo de Produção
Backend
Compile o código backend do Casdoor Go em um executável e inicie-o.
Para Linux:
go build
./casdoor
Para Windows:
go build
casdoor.exe
Frontend
Compile o código frontend do Casdoor em recursos estáticos (arquivos .html, .js, .css):
cd web
yarn install
yarn build
Visite http://localhost:8000 no seu navegador. Faça login no painel do Casdoor com a conta de administrador global padrão: built-in/admin.
admin
123
Para usar outra porta, por favor edite conf/app.conf e modifique httpport, depois reinicie o backend Go.
No ambiente dev, o frontend é executado por yarn run na porta 7001, então se você quiser ir para a página de login do Casdoor, você precisa configurar o link do Casdoor como http://localhost:7001.
No ambiente prod, os arquivos do frontend são primeiro compilados por yarn build e servidos na porta 8000, então se você quiser ir para a página de login do Casdoor, você precisa configurar o link do Casdoor como https://your-casdoor-url.com:8000 (Se você estiver usando um proxy reverso, você precisa configurar o link como seu domínio).
Pegue Nosso Fórum Oficial Casnode como Exemplo
Casnode usa o Casdoor para lidar com autenticação.
Quando estamos testando o Casnode no ambiente dev, configuramos o serverUrl como http://localhost:7001, então quando testamos a funcionalidade de login e cadastro usando o Casdoor, ele irá para o localhost 7001, que é a porta do Casdoor.
E quando colocamos o Casnode no ambiente prod, configuramos o serverUrl como https://door.casdoor.com, então os usuários podem se inscrever ou se cadastrar usando o Casdoor.
