Instalación del Servidor
Requisitos
Sistema Operativo
All major operating systems are supported, including Windows, Linux, and macOS.
Entorno
We strongly recommend using Yarn 1.x to run and build the Casdoor frontend. Usar NPM podría causar problemas de estilo de la interfaz de usuario. Para más detalles, ver: 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. Recomendamos encarecidamente utilizar: https://goproxy.cn/
Base de datos
Casdoor utiliza XORM para comunicarse con la base de datos. Based on Xorm Drivers Support, Casdoor currently provides support for the following databases:
MySQLMariaDBPostgreSQLCockroachDBSQL ServerOracleSQLite 3TiDB
Descargar
El código fuente de Casdoor está alojado en GitHub: https://github.com/casdoor/casdoor. Tanto el código backend de Go como el código frontend de React están contenidos en un solo repositorio.
| Nombre | Descripción | Idioma | Código fuente |
|---|---|---|---|
| Frontend | Interfaz de usuario frontend web para Casdoor | JavaScript + React | https://github.com/casdoor/casdoor/tree/master/web |
| Backend | Backend API RESTful para Casdoor | Golang + Beego + XORM | https://github.com/casdoor/casdoor |
Casdoor soporta Go Modules. Para descargar el código, simplemente clona el código usando git:
cd path/to/folder
git clone https://github.com/casdoor/casdoor
Configuración
Configurar Base de Datos
Casdoor soporta MySQL, MSSQL, SQLite3 y PostgreSQL. Por defecto, Casdoor utiliza MySQL.
MySQL
Casdoor almacena información de usuarios, nodos y temas en una base de datos MySQL llamada casdoor. Si la base de datos no existe, debe ser creada manualmente. La cadena de conexión de la DB se puede especificar en: 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.
Suponiendo que ya has preparado una base de datos llamada casdoor, deberías especificar app.conf de esta manera:
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor
dbName = casdoor
dataSourceName tenga un dbName no vacío y también duplique el nombre de la base de datos para el campo dbname como se muestra en el ejemplo anterior. :::CockroachDB
CockroachDB también se puede utilizar con el controlador de PostgreSQL y tiene la misma configuración que 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 SQLite3, deberías especificar app.conf de esta manera:
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).
Ejecutar
Actualmente hay dos métodos para iniciar, y puedes elegir uno según tu situación.
Modo de Desarrollo
Backend
El backend de Go de Casdoor se ejecuta en el puerto 8000 por defecto. Puedes iniciar el backend de Go con el siguiente comando:
go run main.go
Después de que el servidor esté funcionando con éxito, puedes iniciar la parte frontend.
Frontend
El frontend de Casdoor es un proyecto muy clásico de Create-React-App (CRA). Se ejecuta en el puerto 7001 por defecto. Usa los siguientes comandos para ejecutar el frontend:
cd web
yarn install
yarn start
Visita http://localhost:7001 en tu navegador. Inicie sesión en el panel de Casdoor con la cuenta de administrador global predeterminada: built-in/admin.
admin
123
Modo Producción
Backend
Construya el código del backend de Casdoor Go en un ejecutable e inícielo.
Para Linux:
go build
./casdoor
Para Windows:
go build
casdoor.exe
Frontend
Construya el código del frontend de Casdoor en recursos estáticos (archivos .html, .js, .css):
cd web
yarn install
yarn build
Visite http://localhost:8000 en su navegador. Inicie sesión en el panel de Casdoor con la cuenta de administrador global predeterminada: built-in/admin.
admin
123
Para usar otro puerto, por favor edite conf/app.conf y modifique httpport, luego reinicie el backend de Go.
En el entorno dev, el frontend se ejecuta por yarn run en el puerto 7001, así que si quiere ir a la página de inicio de sesión de Casdoor, necesita configurar el enlace de Casdoor como http://localhost:7001.
En el entorno prod, los archivos del frontend se construyen primero por yarn build y se sirven en el puerto 8000, así que si quiere ir a la página de inicio de sesión de Casdoor, necesita configurar el enlace de Casdoor como https://your-casdoor-url.com:8000 (Si está utilizando un proxy inverso, necesita configurar el enlace como su dominio).
Tome Nuestro Foro Oficial Casnode como Ejemplo
Casnode utiliza Casdoor para manejar la autenticación.
Cuando estamos probando Casnode en el entorno dev, configuramos el serverUrl como http://localhost:7001, así que cuando probamos la funcionalidad de inicio de sesión y registro usando Casdoor, irá a localhost 7001, que es el puerto de Casdoor.
Y cuando ponemos Casnode en el entorno prod, configuramos el serverUrl como https://door.casdoor.com, así los usuarios pueden iniciar sesión o registrarse usando Casdoor.
