Installation du serveur
Exigences
Système d'exploitation
All major operating systems are supported, including Windows, Linux, and macOS.
Environnement
We strongly recommend using Yarn 1.x to run and build the Casdoor frontend. L'utilisation de NPM pourrait causer des problèmes de style de l'interface utilisateur. Pour plus de détails, voir : 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. Nous recommandons fortement d'utiliser : https://goproxy.cn/
Base de données
Casdoor utilise XORM pour communiquer avec la base de données. Based on Xorm Drivers Support, Casdoor currently provides support for the following databases:
MySQLMariaDBPostgreSQLCockroachDBSQL ServerOracleSQLite 3TiDB
Télécharger
Le code source de Casdoor est hébergé sur GitHub : https://github.com/casdoor/casdoor. Le code backend Go et le code frontend React sont contenus dans un seul dépôt.
| Nom | Description | Langue | Code source |
|---|---|---|---|
| Frontend | Interface utilisateur frontend Web pour Casdoor | JavaScript + React | https://github.com/casdoor/casdoor/tree/master/web |
| Backend | Backend API RESTful pour Casdoor | Golang + Beego + XORM | https://github.com/casdoor/casdoor |
Casdoor prend en charge Go Modules. Pour télécharger le code, clonez simplement le code en utilisant git :
cd path/to/folder
git clone https://github.com/casdoor/casdoor
Configuration
Configurer la base de données
Casdoor prend en charge MySQL, MSSQL, SQLite3 et PostgreSQL. Par défaut, Casdoor utilise MySQL.
MySQL
Casdoor stocke les informations des utilisateurs, des nœuds et des sujets dans une base de données MySQL nommée casdoor. Si la base de données n'existe pas, elle doit être créée manuellement. La chaîne de connexion DB peut être spécifiée à : 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.
En supposant que vous avez déjà préparé une base de données appelée casdoor, vous devriez spécifier app.conf comme ceci :
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor
dbName = casdoor
dataSourceName a un dbName non vide et aussi dupliquez le nom de la base de données pour le champ dbname comme montré dans l'exemple ci-dessus. :::CockroachDB
CockroachDB peut également être utilisé avec le pilote PostgreSQL et a la même configuration que PostgreSQL.
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor serial_normalization=virtual_sequence
dbName = casdoor
SQLite3
Pour configurer SQLite3, vous devriez spécifier app.conf comme ceci :
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).
Exécuter
Il existe actuellement deux méthodes pour démarrer, et vous pouvez en choisir une selon votre situation.
Mode Développement
Backend
Le backend Go de Casdoor s'exécute sur le port 8000 par défaut. Vous pouvez démarrer le backend Go avec la commande suivante :
go run main.go
Après que le serveur fonctionne avec succès, vous pouvez démarrer la partie frontend.
Frontend
Le frontend de Casdoor est un projet très classique Create-React-App (CRA). Il s'exécute sur le port 7001 par défaut. Utilisez les commandes suivantes pour exécuter le frontend :
cd web
yarn install
yarn start
Visitez http://localhost:7001 dans votre navigateur. Connectez-vous au tableau de bord Casdoor avec le compte administrateur global par défaut : built-in/admin.
admin
123
Mode Production
Backend
Construisez le code backend Go de Casdoor en un exécutable et démarrez-le.
Pour Linux :
go build
./casdoor
Pour Windows :
go build
casdoor.exe
Frontend
Construisez le code frontend de Casdoor en ressources statiques (fichiers .html, .js, .css) :
cd web
yarn install
yarn build
Visitez http://localhost:8000 dans votre navigateur. Connectez-vous au tableau de bord Casdoor avec le compte administrateur global par défaut : built-in/admin.
admin
123
Pour utiliser un autre port, veuillez éditer conf/app.conf et modifier httpport, puis redémarrez le backend Go.
Dans l'environnement dev, le frontend est exécuté par yarn run sur le port 7001, donc si vous voulez aller à la page de connexion Casdoor, vous devez définir le lien Casdoor comme http://localhost:7001.
Dans l'environnement prod, les fichiers frontend sont d'abord construits par yarn build et servis sur le port 8000, donc si vous voulez aller à la page de connexion Casdoor, vous devez définir le lien Casdoor comme https://your-casdoor-url.com:8000 (Si vous utilisez un proxy inverse, vous devez définir le lien comme votre domaine).
Prenez notre forum officiel Casnode comme exemple
Casnode utilise Casdoor pour gérer l'authentification.
Lorsque nous testons Casnode dans l'environnement dev, nous définissons le serverUrl comme http://localhost:7001, donc lorsque nous testons les fonctionnalités de connexion et d'inscription en utilisant Casdoor, cela nous amène au port 7001 de localhost, qui est le port de Casdoor.
Et lorsque nous mettons Casnode dans l'environnement prod, nous définissons le serverUrl comme https://door.casdoor.com, donc les utilisateurs peuvent se connecter ou s'inscrire en utilisant Casdoor.
