Zum Hauptinhalt springen

Serverinstallation

Anforderungen

Betriebssystem

All major operating systems are supported, including Windows, Linux, and macOS.

Umgebung

Info

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.

Vorsicht

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:

  • MySQL
  • MariaDB
  • PostgreSQL
  • CockroachDB
  • SQL Server
  • Oracle
  • SQLite 3
  • TiDB

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.

NameBeschreibungSpracheQuellcode
FrontendWeb-Frontend-Benutzeroberfläche für CasdoorJavaScript + Reacthttps://github.com/casdoor/casdoor/tree/master/web
BackendRESTful-API-Backend für CasdoorGolang + Beego + XORMhttps://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
Für PostgreSQL stellen Sie sicher, dass 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
Tipp

Um einen anderen Port zu verwenden, bearbeiten Sie bitte conf/app.conf und ändern Sie httpport, dann starten Sie das Go Backend neu.

Casdoor Port-Details

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.

Casnode-Beispiel