xuxiaowei-cloud-next
徐晓伟微服务-next
Микросервис, основанный на JDK 17, Spring Boot 3.x.x, OAuth 2.1, Vite 4, Vue 3, Element Plus.
Поддерживает сторонние системы входа: Alipay, DingTalk, Code Cloud, GitHub, GitLab, QQ, WeChat, Enterprise WeChat и Weibo.
Включает в себя выполнение CI/CD конвейера с использованием GitLab Runner, Kubernetes (K8S), Docker и Shell для автоматического построения, создания образов Docker и публикации.
Открытый исходный код навсегда бесплатно.
Для упрощения разработки, повышения производительности и решения распространённых проблем.
Примечание: перевод выполнен автоматически, возможны неточности. Данный текст написан на языке Markdown.
В тексте содержатся элементы оформления, которые не несут смысловой нагрузки и не могут быть переведены.
Текст представляет собой изображение с логотипом и текстом «Блог CSDN».
Перевод: Блог CSDN. ``` <img alt="CSDN 粉丝"
<a target="_blank" href="https://blog.csdn.net/qq_32596527">
<img alt="CSDN 访问" Данный текст написан на языке JSON.
Это язык программирования, который используется для хранения структурированных данных, их обмена и работы с ними.
В тексте содержатся данные в формате JSON, которые представляют собой объект со свойствами. К сожалению, без дополнительной информации о контексте и цели использования этих данных невозможно определить основной язык текста запроса и перевести его. **Текст**:
<a target="_blank" href="https://www.jetbrains.com/idea">
<img alt="IntelliJ IDEA" src="https://img.shields.io/static/v1?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAAAAAByaaZbAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfmBRkBICRBfW8eAAABPklEQVRIx+2UTStEYRiGr/kqZWaKMoyQUsoCWdn4AZKPlZSF5fgPVhYWStlZqPkB7GynWSg/QCmhUFOUGCPNZBrlnNtijmneOYZzykrn2p2e536f577P2wsBPvmQlACQg13Mr4b9CCTpuMunQIdGT8gQRCBZAQRPu0B6aRjsvqKXCRcAJO8lTTf3/GQJKF8Bz5481CfMvEnnxtrRduKhPET7R6GWka+UrBW//8Hej3haqZQFYgNz8VDmYbNNT8iSFDdMM1iSyh3uWHsAesNgVc1D7k4hMeISrN0uAOtAwTYF6Smg2UQUYDYbO8qdjS0Cua9CahsgPd8NleuW3WOFRiTV+nTj8mnL5XbixinVlnEJ7L1vkuzcuJT0ejDufL98UTjZmWyJsqFJvT9aBAT8J5zrrXYFF788xn8gCPDCJ2cr3I1zqSjOAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIyLTA1LTI1VDAxOjMyOjM2KzAwOjAwH/0yeQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wNS0yNVQwMTozMjozNiswMDowMG6gisUAAAAASUVORK5CYII=&message=IntelliJ IDEA">
</a>
**Перевод**:
Ссылка с целью открытия в новом окне на сайт JetBrains:
<изображение alt="IntelliJ IDEA"
src="https://img.shields.io/static/v1?logo=данные:изображение/png;база64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAAAAAByaaZbAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfmBRkBICRBfW8eAAABPklEQVRIx+2UTStEYRiGr/kqZWaKMoyQUsoCWdn4AZKPlZSF5fgPVhYWStlZqPkB7GynWSg/QCmhUFOUGCPNZBrlnNtijmneOYZzykrn2p2e536f577P2wsBPvmQlACQg13Mr4b9CCTpuMunQIdGT8gQRCBZAQRPu0B6aRjsvqKXCRcAJO8lTTf3/GQJKF8Bz5481CfMvEnnxtrRduKhPET7R6GWka+UrBW//8Hej3haqZQFYgNz8VDmYbNNT8iSFDdMM1iSyh3uWHsAesNgVc1D7k4hMeISrN0uAOtAwTYF6Smg2UQUYDYbO8qdjS0Cua9CahsgPd8NleuW3WOFRiTV+nTj8mnL5XbixinVlnEJ7L1vkuzcuJT0ejDufL98UTjZmWyJsqFJvT9aBAT8J5zrrXYFF788xn8gCPDCJ2cr3I1zqSjOAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIyLTA1LTI1VDAxOjMyOjM2KzAwOjAwH/0yeQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wNS0yNVQwMTozMjozNiswMDowMG6gisUAAAAASUVORK5CYII=&message=IntelliJ IDEA"/>
*Аналогично для всех остальных фрагментов текста.* **Соответствующие проекты**
* xuxiaowei-cloud:
* используется Spring Boot 2.7.x, чтобы удалить «-next» в конце адреса репозитория (полное имя платформы репозитория одинаково).
1. GitLab Jihulab: https://jihulab.com/xuxiaowei-cloud/xuxiaowei-cloud.
2. Gitee: https://gitee.com/xuxiaowei-cloud/xuxiaowei-cloud.
3. GitCode: https://gitcode.net/xuxiaowei-cloud/xuxiaowei-cloud.
4. GitLink: https://gitlink.org.cn/xuxiaowei-cloud/xuxiaowei-cloud.
5. GitHub: https://github.com/xuxiaowei-cloud/xuxiaowei-cloud.
6. GitLab: https://gitlab.com/xuxiaowei-cloud/xuxiaowei-cloud.
**Код форматирования spring-javaformat**
https://github.com/spring-io/spring-javaformat
**Инструкции по внесению кода**
https://www.yuque.com/xuxiaowei-com-cn/xuxiaowei-cloud/how-to-contribute-code
IntelliJ IDEA:
* Добавьте зависимость io.spring.javaformat:spring-javaformat-maven-plugin в проект Maven. После этого можно установить плагин автоматического форматирования без необходимости выполнения следующих команд: spring-javaformat-intellij-idea-plugin.
```shell
./mvnw spring-javaformat:apply
или
mvn spring-javaformat:apply
Документация по проекту
https://www.yuque.com/xuxiaowei-com-cn/xuxiaowei-cloud
Сравнение версий зависимостей
Зависимость | Версия проекта | Новая версия | Описание |
---|---|---|---|
spring-boot | v3.1.2 | Ограничение Spring Boot 3.x, нажмите, чтобы увидеть проект Spring Boot 2.7.x | |
spring-cloud | v2022.0.3 | Ограничение Spring Boot 3.x | |
spring-cloud-alibaba | v2022.0.0.0 | Ограничение Spring Boot 3.x, Spring Cloud Alibaba | |
spring-boot-admin | v3.1.3 | ||
---------------------------------- | --------- | ----------------------------------------------------------------------------- | ---- |
spring-authorization-server | v1.1.1 | Ограничение Spring Boot 3.x | |
mybatis | v3.0.2 | ||
mybatis-plus | v3.5.3.1 | ||
dynamic-datasource | v4.1.2 | Указание на dynamic-datasource-spring-boot3-starter | |
springdoc | v2.1.0 | Используется для генерации API doc, поддерживает получение поля комментариев из javadoc | |
guava | v32.1.1-jre | ||
fastjson | v2.0.37 | Используется версия без английского суффикса | |
hutool | v5.8.20 |
Зависимость | Версия в проекте | Новая версия | Описание |
---|---|---|---|
@element-plus/icons-vue | 2.1.0 | ||
@tauri-apps/api | 1.4.0 | ||
wangeditor/editor-for-vue | 5.1.12 | — | |
axios | 1.4.0 | — | |
crypto-js | 4.1.1 | — | |
echarts | 5.4.3 | — | |
element-plus | 2.3.8 | — | |
js-cookie | 3.0.5 | — | |
jsencrypt | 3.3.2 | — | |
pinia | 2.1.6 | — | |
sockjs-client | 1.6.1 | — | |
stompjs | 2.3.3 | — | |
vue | 3.3.4 | — | |
vue-clipboard3 | 2.0.0 | — | |
vue-echarts | 6.6.0 | — | |
vue-router | 4.2.4 | — | |
tauri-apps/cli | 1.4.0 | — | |
types/crypto-js | 4.1.1 | — | |
types/node | 20.4.5 | — | |
typescript-eslint/eslint-plugin | 6.2.0 | — | |
typescript-eslint/parser | 6.2.0 | — | |
vitejs/plugin-vue | 4.2.3 | — | |
eslint | 8.45.0 | — | |
eslint-config-standard | 17.1.0 | — | |
eslint-plugin-import | 2.27.5 | — | |
eslint-plugin-n | 16.0.1 | — | |
eslint-plugin-promise | 6.1.1 | — | |
eslint-plugin-vue | 9.15.1 | — | |
lint-staged | 13.2.3 | — | |
terser | 5.19.2 | — | |
unocss | 0.53.6 | — | 1801 |
WebService 服务 | 1901 | ||
WeChat-минипрограмма | WeChat 小程序服务 | 2001 | |
WeChat-официальный аккаунт | WeChat 公众号服务 | 2101 | |
Мастер-данные | Главный сервис данных | 2201 | |
Файл | Сервис файлов | 2301 | |
XXL Job Admin | XXL Job администратор | 5101 | |
OAuth 2.0 клиент (независимый сервис) | OAuth 2.0 客户端(独立服务) | 10001 | |
CXF клиент (независимый сервис) | CXF 客户端(独立服务) | 10002 |
Имя учётной записи | Пароль | Включено |
---|---|---|
xuxiaowei | 123 | 1 |
Название | Адрес | Имя учётной записи | Пароль |
---|---|---|---|
XXL Job | http://127.0.0.1:5101/xxl-job-admin | admin | 123456 |
Шлюз Swagger | http://127.0.0.1:1101/webjars/swagger-ui/index.html | ||
Сервис Swagger | http://127.0.0.1:порт/swagger-ui/index.html | ||
URL программы защиты докера | http://host.docker.example.next.xuxiaowei.cloud:2375 | ||
Частный реестр докера URL | registry.docker.example.next.xuxiaowei.cloud | admin | xuxiaowei |
Имя учётной записи | Права | Описание |
---|---|---|
xuxiaowei | audit_authorization_consent_delete | Удаление согласия на авторизацию |
xuxiaowei | audit_authorization_consent_read | Просмотр согласия на авторизацию |
xuxiaowei | audit_authorization_delete | Удаление записей авторизации |
xuxiaowei | audit_authorization_read | Просмотр записей авторизации |
xuxiaowei | clientId_token_delete | Удаление прав на удаление токена клиента |
xuxiaowei | dict_add | Добавление прав на добавление словаря |
xuxiaowei | dict_delete | Удаление прав на удаление словаря |
xuxiaowei | dict_edit | Изменение прав на изменение словаря |
xuxiaowei | dict_read | Просмотр прав на просмотр словаря |
xuxiaowei | manage_client_add | Добавление прав на управление клиентами |
xuxiaowei | manage_client_delete | Удаление прав на управление клиентами |
xuxiaowei | manage_client_edit | Изменение прав на управление клиентами |
xuxiaowei | manage_client_read | Просмотр прав на управление клиентами |
xuxiaowei | manage_user_add | Добавление прав на управление пользователями |
xuxiaowei | manage_user_authority | Предоставление прав на управление пользователям |
xuxiaowei | manage_user_delete | Удаление прав на управление пользователями |
xuxiaowei | manage_user_edit | Изменение прав на управление пользователями |
xuxiaowei | manage_user_read | Просмотр прав на управление пользователями |
xuxiaowei | region_read | Просмотр прав доступа к информации о регионе |
xuxiaowei | username_token_delete | Удаление прав на удаление пользовательского токена |
xuxiaowei | user_authorities | Просмотр прав пользователей |
xuxiaowei | user_details | Просмотр деталей пользователей |
xuxiaowei | user_info | Просмотр информации о пользователях |
xuxiaowei | user_oauth2_oauth2Request | Просмотр запросов пользователей oauth2 |
xuxiaowei | user_oauth2_userAuthentication | Просмотр аутентификации пользователей oauth2 |
| Поле | id | client_id | client_id_issued_at | client_secret | client_secret_expires_at | client_authentication_methods | authorization_grant_types | redirect_uris | | Область применения | Ключ | Идентификатор клиента | Время создания идентификатора клиента | Клиентский секрет | Срок действия клиентского секрета | Метод аутентификации клиента | Тип авторизации | URL перенаправления кода авторизации | Область действия | Требуется ли согласие клиента на авторизацию | Срок действия кода авторизации | Срок действия токена доступа | Срок действия обновляющего токена | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | Сайт | 1 | xuxiaowei_client_id | 2022-05-30 17:17:41 | xuxiaowei_client_secret | — | client_secret_post, client_secret_basic | refresh_token, implicit, client_credentials, authorization_code | http://127.0.0.1:1401/code, http://gateway.example.next.xuxiaowei.cloud:1101/passport/code, https://gateway.example.next.xuxiaowei.cloud/passport/code | snsapi_base, snsapi_info | Нет | 300 | 43200 | 2592000 | | Маленькая программа WeChat | 2 | xuxiaowei_client_wechat_miniprogram_id | 2022-05-30 17:17:41 | xuxiaowei_client_wechat_miniprogram_secret | — | client_secret_post, client_secret_basic | refresh_token, wechat_miniprogram | — | snsapi_base, snsapi_info | Нет | 300 | 43200 | 2592000 | | Официальный аккаунт WeChat | 3 | xuxiaowei_client_wechat_offiaccount_id | 2022-05-30 17:17:41 | xuxiaowei_client_wechat_offiaccount_secret | — | client_secret_post, client_secret_basic | refresh_token, wechat_offiaccount | — | snsapi_base, snsapi_info | Нет | 300 | 43200 | 2592000 | | Сканирование кода WeChat | 4 | xuxiaowei_client_wechat_oplatform_id | 2022-05-30 17:17:41 | xuxiaowei_client_wechat_oplatform_secret | — | client_secret_post, client_secret_basic | refresh_token, wechat_oplatform_website | — | snsapi_base, snsapi_info | Нет | 300 | 43200 | 2592000 | | Gitee | 5 | xuxiaowei_client_gitee_id | 2022-05-30 17:17:41 | xuxiaowei_client_gitee_secret | — | client_secret_post, client_secret_basic | refresh_token, gitee | — | snsapi_base, snsapi_info | Нет | 300 | 43200 | 2592000 | |--------------------------|------------------------------| | Использование QQ-сканера | 6 | | xuxiaowei_client_qq_website_id | 2022-05-30 17:17:41 | | xuxiaowei_client_qq_website_secret | | | client_secret_post,client_secret_basic | refresh_token, qq_website | | snsapi_base,snsapi_info | false | 300 | 43200 | 2592000 |
И так далее.
В запросе используется язык программирования YAML. Авторизация и типы грантов
Репозитории и ветки
Какие шесть репозиториев используются?
Какой из этих шести репозиториев является основным? Когда синхронизируются остальные репозитории?
Назначение каждого репозитория: | Репозиторий | Назначение | Описание | | --- | --- | --- | | JiHuLab | Доступ для пользователей внутри страны, вопросы, загрузка ресурсов, GitLab Runner CI/CD конвейер для упаковки/создания образов Docker, Kubernetes (k8s) для публикации проектов | Открытый проект, бесплатное использование GitLab Runner | | Gitee | Резервный репозиторий внутри страны | Из-за технического стека (проект использует GitLab Runner CI/CD для тестирования и публикации конвейеров) и форс-мажорных обстоятельств в будущем будут закрыты проблемы Gitee, а исторические данные будут перенесены в JiHuLab | | GitLab | Резервный репозиторий за рубежом, тестирование конвейера за рубежом | Бесплатная квота 400 минут, возможно, сбой в конце месяца из-за исчерпания бесплатной квоты | 1. Какие функции у каждой ветки?
main:
xuxiaowei — начало ветки:
shell:
docker:
pages:
consul:
Остальные ветки не используются.
Ветки, которые включают CI/CD:
2. Массовое добавление адресов удалённых репозиториев
git remote add gitee https://gitee.com/xuxiaowei-cloud/xuxiaowei-cloud-next.git
git remote add gitlab https://gitlab.com/xuxiaowei-cloud/xuxiaowei-cloud-next.git
git remote add jihulab https://jihulab.com/xuxiaowei-cloud/xuxiaowei-cloud-next.git
git remote add github https://github.com/xuxiaowei-cloud/xuxiaowei-cloud-next.git
git remote add gitcode https://gitcode.net/xuxiaowei-cloud/xuxiaowei-cloud-next.git
git remote add gitlink https://gitlink.org.cn/xuxiaowei-cloud/xuxiaowei-cloud-next.git
3. Благодарности
Благодарим за предоставление инструментов разработки с бесплатной лицензией.
4. Звёзды проекта с течением времени
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )