Введение
Базовая система управления микросервисами с ролевым доступом (RBAC), приглашаем заинтересованных коллег к общению и обучению.
Версия: 1.2.1, официальная версия.
Группа для общения и связи: 78780245.
1. Структура организации
1.1 Каталог модулей:
1.2 Описание технической архитектуры: Проект регулярно обновляется до последней стабильной версии.
Бэкенд-проект использует следующие технологии: Spring Cloud, OAuth2, Nacos, Spring Boot, Spring MVC, MyBatis и др. Также используются плагины Lombok, Swagger, Mybatis-plus, PageHelper и др., а также базы данных MySQL 8, Redis 6 и др.
Фронтенд-проект использует технологии Vue, Vuex, Element-UI, Axios и др. для разработки основных технологий.
1.3 Стандарты кода: В этом проекте применяется стандарт кодирования Alibaba P3C.
2. Создание среды разработки
Здесь представлены только общие идеи и ссылки на справочные документы. Для получения более подробной информации о конкретных деталях можно связаться с группой для обсуждения.
Рекомендуется использовать следующие компоненты для создания среды разработки: openjdk 11, IDEA, виртуальная машина (Linux), nginx, docker.
2.1 Бэкенд-среда разработки:
# Сборка текущего проекта
mvn clean install
2.2 Фронтенд-среда разработки (см. раздел «Создание среды разработки» в README.md для фронтенд-проекта).
3. Развёртывание проекта
Серверная среда: openjdk 11, nginx.
3.1 Развёртывание бэкенда: С помощью Maven соберите бизнес-проект, чтобы создать три базовых сервисных jar-файла, которые будут развёрнуты на облачном сервере. Структура каталогов может быть организована в соответствии с вашими потребностями.
Запустите бэкенд-проект, создав стартовый скрипт start.sh в том же каталоге, что и jar-файл, и выполнив его с помощью команды Linux.
#!/bin/bash
nohup java -jar ./cs-admin.jar >./logs/nohup.out 2>&1 &
Чтобы закрыть бэкенд-проект, используйте команду kill -9 xxx в Linux для уничтожения процесса. (Планируется оптимизация метода закрытия в будущем.)
3.2 Развёртывание фронтенда: Добавьте следующую конфигурацию в файл конфигурации nginx nginx.conf:
server {
listen 80;
# Публичный домен или IP-адрес
server_name www.xxxxx.cn;
location ^~ /api/ {
# Адрес бэкенд-программы
proxy_pass http://localhost:4380;
proxy_connect_timeout 500s;
proxy_read_timeout 500s;
proxy_send_timeout 500s;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
# Каталог развёртывания фронтенд-приложения
root /html/cslc-admin-ui/;
index index.html index.htm;
}
}
3.3 Шифрование пароля:
3.3.1 Получение зашифрованных данных:
public static void main(String[] args) {
BasicTextEncryptor textEncryptor = new BasicTextEncryptor();
// Соль, необходимая для шифрования
textEncryptor.setPassword("xxxxx");
// Данные для шифрования, содержащие ENC(xxx)
System.out.println("ENC("+textEncryptor.encrypt("123456")+")");
}
3.3.2 Добавление следующей конфигурации:
```yaml
jasypt:
encryptor:
password: rinxt527c # Замените на собственную соль
algorithm: PBEWithMD5AndDES
iv-generator-classname: org.jasypt.iv.NoIvGenerator
3.3.3 Пример использования MySQL:
spring:
datasource:
password: ENC(xxx) # Замените xxx на зашифрованные данные
4. Рекомендуемые документы для среды
4.1 Рекомендации по локальной разработке:
4.2 Рекомендации по серверной среде:
4.3 Другие рекомендации:
5. Предварительный просмотр проекта К сожалению, не удалось найти изображения, указанные в тексте запроса. | | | | :-- |:-- | |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )