Serverinstallation
Anforderungen
Betriebssystem
All major operating systems are supported, including Windows, Linux, and macOS.
Umgebung
We strongly recommend using Yarn 1.x to run and build the Casdoor frontend. Die Verwendung von NPM könnte zu Problemen mit dem UI-Styling führen. Weitere Details finden Sie unter: 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. Wir empfehlen dringend die Verwendung von: https://goproxy.cn/
Datenbank
Casdoor verwendet XORM, um mit der Datenbank zu kommunizieren. Based on Xorm Drivers Support, Casdoor currently provides support for the following databases:
MySQLMariaDBPostgreSQLCockroachDBSQL ServerOracleSQLite 3TiDB
Herunterladen
Der Quellcode von Casdoor ist auf GitHub gehostet: https://github.com/casdoor/casdoor. Sowohl der Go-Backend-Code als auch der React-Frontend-Code befinden sich in einem einzigen Repository.
| Name | Beschreibung | Sprache | Quellcode |
|---|---|---|---|
| Frontend | Web-Frontend-Benutzeroberfläche für Casdoor | JavaScript + React | https://github.com/casdoor/casdoor/tree/master/web |
| Backend | RESTful-API-Backend für Casdoor | Golang + Beego + XORM | https://github.com/casdoor/casdoor |
Casdoor unterstützt Go Modules. Um den Code herunterzuladen, klonen Sie einfach den Code mit git:
cd path/to/folder
git clone https://github.com/casdoor/casdoor
Konfiguration
Datenbank konfigurieren
Casdoor unterstützt MySQL, MSSQL, SQLite3 und PostgreSQL. Standardmäßig verwendet Casdoor MySQL.
MySQL
Casdoor speichert Benutzer-, Knoten- und Themendaten in einer MySQL-Datenbank namens casdoor. Wenn die Datenbank nicht existiert, muss sie manuell erstellt werden. Die DB-Verbindungszeichenfolge kann hier angegeben werden: 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.
Angenommen, Sie haben bereits eine Datenbank namens casdoor vorbereitet, sollten Sie app.conf so angeben:
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor
dbName = casdoor
dataSourceName einen nicht-leeren dbName hat und auch duplizieren Sie den Datenbanknamen für das Feld dbname wie im obigen Beispiel gezeigt. :::CockroachDB
CockroachDB kann auch mit dem PostgreSQL-Treiber verwendet werden und hat die gleiche Konfiguration wie PostgreSQL.
driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor serial_normalization=virtual_sequence
dbName = casdoor
SQLite3
Um SQLite3 zu konfigurieren, sollten Sie app.conf so angeben:
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).
Ausführen
Derzeit gibt es zwei Methoden zum Starten, und Sie können je nach Ihrer Situation eine auswählen.
Entwicklungsmodus
Backend
Das Go-Backend von Casdoor läuft standardmäßig auf Port 8000. Sie können das Go-Backend mit dem folgenden Befehl starten:
go run main.go
Nachdem der Server erfolgreich läuft, können Sie den Frontend-Teil starten.
Frontend
Das Frontend von Casdoor ist ein sehr klassisches Create-React-App (CRA)-Projekt. Es läuft standardmäßig auf Port 7001. Verwenden Sie die folgenden Befehle, um das Frontend auszuführen:
cd web
yarn install
yarn start
Besuchen Sie http://localhost:7001 in Ihrem Browser. Melden Sie sich mit dem standardmäßigen globalen Admin-Konto im Casdoor-Dashboard an: built-in/admin.
admin
123
Produktionsmodus
Backend
Bauen Sie den Casdoor Go Backend-Code in eine ausführbares Programm um und starten Sie es.
Für Linux:
go build
./casdoor
Für Windows:
go build
casdoor.exe
Frontend
Bauen Sie den Casdoor Frontend-Code in statische Ressourcen (.html, .js, .css Dateien):
cd web
yarn install
yarn build
Besuchen Sie http://localhost:8000 in Ihrem Browser. Melden Sie sich mit dem standardmäßigen globalen Admin-Konto im Casdoor-Dashboard an: built-in/admin.
admin
123
Um einen anderen Port zu verwenden, bearbeiten Sie bitte conf/app.conf und ändern Sie httpport, dann starten Sie das Go Backend neu.
In der dev-Umgebung wird das Frontend von yarn run auf Port 7001 ausgeführt, also wenn Sie zur Casdoor-Anmeldeseite gehen möchten, müssen Sie den Casdoor-Link als http://localhost:7001 einstellen.
In der prod-Umgebung werden die Frontend-Dateien zuerst von yarn build erstellt und auf Port 8000 bereitgestellt, also wenn Sie zur Casdoor-Anmeldeseite gehen möchten, müssen Sie den Casdoor-Link als https://your-casdoor-url.com:8000 einstellen (Wenn Sie einen Reverse-Proxy verwenden, müssen Sie den Link als Ihre Domain einstellen).
Nehmen Sie unser offizielles Forum Casnode als Beispiel
Casnode verwendet Casdoor zur Authentifizierung.
Wenn wir Casnode in der dev-Umgebung testen, setzen wir die serverUrl als http://localhost:7001, also wenn wir die Anmelde- und Registrierungsfunktion mit Casdoor testen, wird es zu localhost 7001 gehen, welches der Casdoor-Port ist.
Und wenn wir Casnode in die prod-Umgebung bringen, setzen wir die serverUrl als https://door.casdoor.com, so dass Benutzer sich mit Casdoor anmelden oder registrieren können.
