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

Casibase can be installed using pre-built binaries or by building from source.

Pre-built Binaries

For production deployments, we recommend using pre-built binaries. Download the latest release from the GitHub Releases page. Casibase provides binaries for:

  • Linux: x86_64 (amd64) and ARM64
  • Windows: x86_64 (amd64) and ARM64
  • macOS: x86_64 (amd64) and ARM64

Extract the downloaded archive and you'll find the Casibase binary along with the web frontend and configuration files ready to use.

Build from Source

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.

casdoorEndpoint = <Ihr Casdoor-Endpunkt>
clientId = <Client-ID Ihrer Casdoor-Anwendung>
clientSecret = <Client-Secret Ihrer Casdoor-Anwendung>
casdoorOrganization = <Ihr Casdoor-Organisationsname>
casdoorApplication = <Ihr Casdoor-Anwendungsname>

Ausführen

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:

Using Pre-built Binary

If you downloaded a pre-built binary, extract the archive and run Casibase directly. The binary already includes the compiled frontend.

For Linux/macOS:

# Example for Linux x86_64
tar -xzf casibase_Linux_x86_64.tar.gz
cd casibase
./casibase

For Windows (PowerShell):

# Example for Windows x86_64
Expand-Archive casibase_Windows_x86_64.zip -DestinationPath .
cd casibase
.\casibase.exe

The server will start on port 14000 by default.

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

Building from Source

If you're building from source, follow these steps to create a production build.

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.