メインコンテンツにスキップ

サーバーインストール

要件

オペレーティングシステム

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

環境

情報

We strongly recommend using Yarn 1.x to run and build the Casdoor frontend. NPMを使用するとUIスタイリングの問題が発生する可能性があります。 詳細については、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. https://goproxy.cn/の使用を強くお勧めします。

データベース

CasdoorはXORMを使用してデータベースと通信します。 Based on Xorm Drivers Support, Casdoor currently provides support for the following databases:

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

ダウンロード

CasdoorのソースコードはGitHubにホストされています:https://github.com/casdoor/casdoor。 GoバックエンドコードとReactフロントエンドコードの両方が単一のリポジトリに含まれています。

名前説明言語ソースコード
フロントエンドCasdoorのためのWebフロントエンドUIJavaScript + Reacthttps://github.com/casdoor/casdoor/tree/master/web
バックエンドCasdoorのためのRESTful APIバックエンドGolang + Beego + XORMhttps://github.com/casdoor/casdoor

CasdoorはGo Modulesをサポートしています。 コードをダウンロードするには、gitを使用してコードをクローンします:

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

設定

データベースの設定

CasdoorはMySQL、MSSQL、SQLite3、PostgreSQLをサポートしています。 デフォルトでは、CasdoorはMySQLを使用します。

MySQL

Casdoorはユーザー、ノード、トピック情報をcasdoorという名前のMySQLデータベースに保存します。 データベースが存在しない場合は、手動で作成する必要があります。 DB接続文字列は、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.

すでにcasdoorという名前のデータベースを準備している場合は、app.confを次のように指定する必要があります:

driverName = postgres
dataSourceName = user=postgres password=postgres host=localhost port=5432 sslmode=disable dbname=casdoor
dbName = casdoor
PostgreSQLでは、dataSourceNameに空でないdbNameが含まれていることを確認し、また上記の例に示されているようにdbnameフィールドにデータベース名を複製してください。 :::

CockroachDB

CockroachDBもPostgreSQLドライバーを使用して使用でき、設定はPostgreSQLと同じです。

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

SQLite3

SQLite3を設定するには、app.confを次のように指定する必要があります:

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).

実行

現在、2つの方法で開始でき、状況に応じて1つを選択できます。

開発モード

バックエンド

CasdoorのGoバックエンドはデフォルトでポート8000で実行されます。 次のコマンドでGoバックエンドを起動できます:

go run main.go

サーバーが正常に実行された後、フロントエンド部分を開始できます。

フロントエンド

Casdoorのフロントエンドは非常にクラシックなCreate-React-App (CRA)プロジェクトです。 デフォルトではポート7001で実行されます。 フロントエンドを実行するには、次のコマンドを使用します:

cd web
yarn install
yarn start

ブラウザでhttp://localhost:7001を訪問してください。 デフォルトのグローバル管理者アカウントでCasdoorダッシュボードにログインしてください:built-in/admin

admin
123

プロダクションモード

バックエンド

Casdoor Goバックエンドコードを実行可能ファイルにビルドし、起動します。

Linux用:

go build
./casdoor

Windows用:

go build
casdoor.exe

フロントエンド

Casdoorフロントエンドコードを静的リソース(.html、.js、.cssファイル)にビルドします:

cd web
yarn install
yarn build

ブラウザでhttp://localhost:8000にアクセスしてください。 デフォルトのグローバル管理者アカウントでCasdoorダッシュボードにログインしてください:built-in/admin

admin
123
ヒント

別のポートを使用する場合は、conf/app.confを編集してhttpportを変更し、Goバックエンドを再起動してください。

Casdoorポートの詳細

dev環境では、フロントエンドはyarn runによってポート7001で実行されるため、Casdoorのログインページにアクセスするには、Casdoorのリンクをhttp://localhost:7001に設定する必要があります。

prod環境では、フロントエンドファイルは最初にyarn buildによってビルドされ、ポート8000で提供されるため、Casdoorのログインページにアクセスするには、Casdoorのリンクをhttps://your-casdoor-url.com:8000に設定する必要があります(リバースプロキシを使用している場合は、リンクをあなたのドメインに設定する必要があります)。

公式フォーラムCasnodeを例に取ります

CasnodeはCasdoorを使用して認証を処理します。

dev環境でCasnodeをテストするとき、serverUrlhttp://localhost:7001に設定するので、Casdoorを使用してサインインやサインアップの機能をテストすると、localhost 7001(Casdoorのポート)に行きます。

そして、Casnodeをprod環境に配置するとき、serverUrlhttps://door.casdoor.comに設定するので、ユーザーはCasdoorを使用してサインインまたはサインアップできます。

Casnodeの例