Перейти до основного вмісту

Встановлення сервера

Вимоги

Операційна система

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 містяться в одному репозиторії.

Ім'яОписМоваВихідний код
ФронтендВеб-фронтенд UI для CasdoorJavaScript + Reacthttps://github.com/casdoor/casdoor/tree/master/web
БекендRESTful API бекенд для CasdoorGolang + 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 зберігає інформацію про користувачів, вузли та теми в базі даних MySQL під назвою casdoor. Якщо база даних не існує, її потрібно створити вручну. Рядок підключення до БД можна вказати за адресою: 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).

Запуск

Наразі існує два методи запуску, і ви можете вибрати один залежно від вашої ситуації.

Режим розробки

Бекенд

Go бекенд Casdoor за замовчуванням працює на порту 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

Режим виробництва

Бекенд

Зібрати код Go бекенду Casdoor в виконуваний файл та запустити його.

Для 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 для обробки аутентифікації.

Коли ми тестуємо Casnode у середовищі dev, ми встановлюємо serverUrl як http://localhost:7001, тому коли ми тестуємо функціональність входу та реєстрації за допомогою Casdoor, вона переходить на localhost 7001, який є портом Casdoor.

І коли ми розміщуємо Casnode у середовищі prod, ми встановлюємо serverUrl як https://door.casdoor.com, тому користувачі можуть увійти або зареєструватися за допомогою Casdoor.

Приклад Casnode