Zum Hauptinhalt springen

Server-Installation

Anforderungen

Betriebssystem

Alle wichtigen Betriebssysteme werden unterstützt, einschließlich Windows, Linux und macOS.

Umgebung

Info

Die Verwendung von Casibase erfolgt in zwei Schritten:

Wir empfehlen dringend, Yarn 1.x zu verwenden, um das Casdoor- und Casibase-Frontend auszuführen und zu erstellen. Die Verwendung von NPM kann zu UI-Styling-Problemen führen, siehe: casdoor#294

Vorsicht

Für chinesische Benutzer: Um Go-Abhängigkeiten erfolgreich herunterzuladen, müssen Sie einen Go-Proxy verwenden, indem Sie die GOPROXY-Umgebungsvariable konfigurieren. Wir empfehlen dringend: https://goproxy.cn/

Datenbank

Casibase verwendet XORM, um mit der Datenbank zu kommunizieren. Basierend auf der Xorm-Treiberunterstützung unterstützt Casibase derzeit die folgenden Datenbanken:

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

guacd

Casibase verwendet guacamole-server, um Remote-Desktop-Zugriff bereitzustellen. Wenn Sie diese Funktion nutzen möchten, müssen Sie zuerst guacamole-server installieren. Wenn Sie guacamole-server noch nicht installiert haben, finden Sie unter guacamole-server Installation weitere Informationen.

Sie können guacd auch mit dem folgenden Befehl in Docker ausführen:

docker run -d --name guacd -p 4822:4822 guacamole/guacd

Herunterladen

Der Quellcode von Casibase wird auf GitHub gehostet: https://github.com/casibase/casibase. Sowohl der Go-Backend-Code als auch der React-Frontend-Code befinden sich im selben Repository.

NameBeschreibungSpracheQuellcode
FrontendWeb-Frontend-UI für CasibaseJavaScript + Reacthttps://github.com/casibase/casibase/tree/master/web
BackendRESTful API-Backend für CasibaseGolang + Beego + XORMhttps://github.com/casibase/casibase

Casibase unterstützt Go Modules. Um den Code herunterzuladen, klonen Sie einfach den Code über git:

cd path/to/folder
git clone https://github.com/casibase/casibase

Konfiguration

Casdoor konfigurieren

Bitte beziehen Sie sich auf den Abschnitt Casdoor-SSO, um Casdoor zu konfigurieren.

Merken Sie sich Ihre Casdoor-Konfigurationsinformationen wie clientId, clientSecret, organization, application usw., die wir später verwenden werden.

Datenbank konfigurieren

Casibase unterstützt mysql, mssql, sqlite3, postgres. Casibase verwendet standardmäßig mysql.

MySQL

Casibase speichert seine Benutzer-, Knoten- und Themeninformationen in einer MySQL-Datenbank namens casibase. Wenn die Datenbank nicht existiert, müssen Sie sie manuell erstellen. Die Datenbankverbindungszeichenfolge kann hier angegeben werden: https://github.com/casibase/casibase/blob/master/conf/app.conf

driverName = mysql dataSourceName = root:123456@tcp(localhost:3306)/ dbName = casibase

PostgreSQL

Da wir beim Öffnen von Postgres mit xorm eine Datenbank auswählen müssen, sollten Sie vor dem Ausführen von Casibase manuell eine Datenbank vorbereiten.

Angenommen, Sie haben bereits eine Datenbank namens casibase vorbereitet, dann sollten Sie app.conf wie folgt angeben:

driverName = postgres dataSourceName = "user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casibase" dbName =

Info

Für PostgreSQL stellen Sie sicher, dass dataSourceName einen nicht leeren dbName hat und lassen Sie das separate dbName-Feld leer, wie im obigen Beispiel.

CockroachDB

Sie können auch Cockroachdb mit dem postgres-Treiber verwenden. Die Konfiguration ist dieselbe wie bei PostgreSQL.

driverName = postgres dataSourceName = "user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casibase serial_normalization=virtual_sequence" dbName =

Info

Für CockroachDB vergessen Sie nicht, serial_normalization=virtual_sequence in dataSourceName hinzuzufügen, wie im obigen Beispiel. Andernfalls erhalten Sie jedes Mal, wenn der Dienst startet oder neu startet, einen Fehler, dass die Datenbank bereits existiert. Beachten Sie, dass dies hinzugefügt werden muss, bevor die Datenbank erstellt wird.

Sqlite3

Sie sollten app.conf wie folgt angeben:

driverName = sqlite
dataSourceName = "file:casibase.db?cache=shared"
dbName = casibase

Benutzerdefinierte Konfiguration

Casibase unterstützt benutzerdefinierte Konfigurationen. Sie können die Konfigurationsdatei conf/app.conf ändern, um die Konfiguration zu ändern.

  • Backend (conf/app.conf)
casdoorEndpoint = <Ihr Casdoor-Endpunkt>
clientId = <Client-ID Ihrer Casdoor-Anwendung>
clientSecret = <Client-Secret Ihrer Casdoor-Anwendung>
casdoorOrganization = <Ihr Casdoor-Organisationsname>
casdoorApplication = <Ihr Casdoor-Anwendungsname>
  • Frontend (web/src/Conf.js)
serverUrl: "<Ihr Casdoor-Endpunkt>"
clientId: "<Client-ID Ihrer Casdoor-Anwendung>"
appName: "<Ihr Casdoor-Anwendungsname>"
organizationName: "<Ihr Casdoor-Organisationsname>"

Ausführen

Derzeit gibt es zwei Startmethoden, und Sie können eine davon entsprechend Ihrer Situation auswählen.

Vorsicht

Casibase benötigt Casdoor für die Zugriffskontrolle und einige Backend-Dienste, daher müssen Sie sicherstellen, dass Casdoor ordnungsgemäß läuft, bevor Sie Casibase ausführen.

Wie man Casdoor installiert und ausführt:

Entwicklungsmodus

Backend

Das Go-Backend von Casibase läuft standardmäßig auf Port 14000. Sie können das Go-Backend mit dem folgenden Befehl starten:

go run main.go

Nachdem der Server erfolgreich gestartet wurde, können wir den Frontend-Teil starten.

Frontend

Das Frontend von Casibase ist ein sehr klassisches Create-React-App (CRA) Projekt. Es läuft standardmäßig auf Port 13001. Verwenden Sie den folgenden Befehl, um das Frontend auszuführen:

cd web
yarn install
yarn start

Produktionsmodus

Backend

Kompilieren Sie den Casibase Go-Backend-Code zu einer ausführbaren Datei und starten Sie diese.

Für Linux:

go build
./casibase

Für Windows:

go build
casibase.exe

Frontend

Kompilieren Sie den Casibase-Frontend-Code zu statischen Ressourcen (.html, .js, .css Dateien):

cd web
yarn install
yarn build

Nginx

Tipp

Wenn Sie nginx als Reverse-Proxy verwenden, müssen Sie die folgende Konfiguration in Ihrer nginx-Konfigurationsdatei hinzufügen:

location / {
*** Ihre Konfiguration ***
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

Da Casibase Websocket für die Kommunikation mit guacd verwendet.

Vorschau

Besuchen Sie im Browser: http://localhost:13001. Melden Sie sich mit dem Benutzerkonto, das Sie gerade in Casdoor registriert haben, am Casibase-Dashboard an:

login

Dann gelangen Sie zur Startseite von Casibase:

home

Tipp

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