From e90c421cab918da21aafdfbafc4d332c4b7eb970 Mon Sep 17 00:00:00 2001
From: wangxiang <1827945911@qq.com>
Date: Sat, 16 Sep 2023 15:54:06 +0800
Subject: [PATCH] init
---
.gitignore | 22 +++
README.md | 166 ++++++++++++++++++
cloudreve/docker-compose.yml | 16 ++
gitea/docker-compose.yml | 33 ++++
keycloak/docker-compose.yml | 61 +++++++
kkFileView/docker-compose.yml | 25 +++
mysql/conf/my.cnf | 37 ++++
mysql/docker-compose.yml | 29 +++
nacos/.env.development | 10 ++
nacos/.env.production | 10 ++
nacos/README.md | 17 ++
nexus/docker-compose.yml | 21 +++
nginx/Dockerfile | 9 +
nginx/default.conf | 36 ++++
nginx/docker-compose.yaml | 16 ++
nginx/secret/139.9.72.189/ca.pem | 33 ++++
nginx/secret/139.9.72.189/cert.pem | 31 ++++
.../secret/139.9.72.189/docker-ssl-server.sh | 42 +++++
nginx/secret/139.9.72.189/docker-ssl.sh | 42 +++++
nginx/secret/139.9.72.189/key.pem | 51 ++++++
nginx/secret/139.9.72.189/server-cert.pem | 32 ++++
nginx/secret/139.9.72.189/server-key.pem | 51 ++++++
oracle/docker-compose.yml | 22 +++
portainer/docker-compose.yml | 24 +++
redis/conf/redis.conf | 0
redis/docker-compose.yml | 25 +++
rocketmq/brokerconf/broker.conf | 96 ++++++++++
rocketmq/docker-compose.yml | 51 ++++++
seata/conf/nacos/README.md | 15 ++
seata/conf/nacos/config.txt | 134 ++++++++++++++
seata/conf/nacos/nacos-config.sh | 120 +++++++++++++
seata/conf/nacos/seataServer.properties | 134 ++++++++++++++
seata/conf/registry.conf | 103 +++++++++++
seata/docker-compose.yml | 35 ++++
upsource/README.md | 8 +
upsource/docker-compose.yml | 21 +++
zookeeper/docker-compose.yml | 19 ++
37 files changed, 1597 insertions(+)
create mode 100644 .gitignore
create mode 100644 README.md
create mode 100644 cloudreve/docker-compose.yml
create mode 100644 gitea/docker-compose.yml
create mode 100644 keycloak/docker-compose.yml
create mode 100644 kkFileView/docker-compose.yml
create mode 100644 mysql/conf/my.cnf
create mode 100644 mysql/docker-compose.yml
create mode 100644 nacos/.env.development
create mode 100644 nacos/.env.production
create mode 100644 nacos/README.md
create mode 100644 nexus/docker-compose.yml
create mode 100644 nginx/Dockerfile
create mode 100644 nginx/default.conf
create mode 100644 nginx/docker-compose.yaml
create mode 100644 nginx/secret/139.9.72.189/ca.pem
create mode 100644 nginx/secret/139.9.72.189/cert.pem
create mode 100755 nginx/secret/139.9.72.189/docker-ssl-server.sh
create mode 100755 nginx/secret/139.9.72.189/docker-ssl.sh
create mode 100644 nginx/secret/139.9.72.189/key.pem
create mode 100644 nginx/secret/139.9.72.189/server-cert.pem
create mode 100644 nginx/secret/139.9.72.189/server-key.pem
create mode 100644 oracle/docker-compose.yml
create mode 100644 portainer/docker-compose.yml
create mode 100644 redis/conf/redis.conf
create mode 100644 redis/docker-compose.yml
create mode 100644 rocketmq/brokerconf/broker.conf
create mode 100644 rocketmq/docker-compose.yml
create mode 100644 seata/conf/nacos/README.md
create mode 100644 seata/conf/nacos/config.txt
create mode 100644 seata/conf/nacos/nacos-config.sh
create mode 100644 seata/conf/nacos/seataServer.properties
create mode 100644 seata/conf/registry.conf
create mode 100644 seata/docker-compose.yml
create mode 100644 upsource/README.md
create mode 100644 upsource/docker-compose.yml
create mode 100644 zookeeper/docker-compose.yml
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..bec6be0
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,22 @@
+.DS_Store
+node_modules/
+dist/
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+package-lock.json
+coverage/
+
+# Editor directories and files
+.idea
+.vscode
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+.eslintcache
+
+# cloud ignore
+kicc-bigscreen-design/
+kicc-form-design/
+kicc-workflow-design/
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..2246ff0
--- /dev/null
+++ b/README.md
@@ -0,0 +1,166 @@
+
+
+ 
+
+
+
+ 一个快速开发软件的平台
+
+
+ Website •
+ Documentation
+
+
+
+
+## 🐬 介绍
+海豚生态计划-打造一个web端,安卓端,ios端的一个海豚开发平台生态圈,不接收任何商业化,并且完全免费开源(包含高级功能)。
+
+## 💪 愿景
+让人人都可以快速高效的开发软件
+
+## ✨ 特性
+- **最新技术栈**:使用 Vue3/vite2 等前端前沿技术开发
+- **TypeScript**: 集成TypeScript管控项目,具有可预测的静态类型,提高了代码的可读性、可维护性和可靠性
+- **主题**:可配置的主题
+- **国际化**:内置完善的国际化方案
+- **权限**:内置完善的动态嵌套路由权限生成实现
+- **组件**:二次封装了多个常用的组件
+- **地图**:高德地图在线规划路线导航
+- **多租户**:使用SASS提供独立的、隔离的数据管理,在线无缝切换多个租户数据
+- **动画**:内部默认实现大量的动画过渡、让组件切换更加丝滑
+- **UI组件库**:集成ant-design-vue,提供了一系列高质量、易于使用的组件,可快速迭代项目开发
+- **图表组件**:集成echarts让图表组件开箱即用,提供了各种类型的图表和强大的可定制性
+- **工具**:集成lodash,@vueuse/core,降低相关API的学习成本,提高工作效率,封装了诸多常用的函数和操作,让写vue3也可以甜甜的
+- **状态管理**:集成pinia采用了基于函数式编程的方式来处理状态的更新和变化,更加直观的 API 和高性能的响应式状态管理方案
+- **可拖拽**:集成SortableJS提供了用于创建可排序列表和网格的功能,可以用于实现拖放排序等交互式用户界面
+- **富文本编辑器**:一个基于 JavaScript 的所见即所得的富文本编辑器,TinyMCE的功能非常灵活和高度可定制,开源版功能也比较齐全
+- **高级表格组件**:集成vxe-table提供了丰富的表格功能和灵活的配置选项,可以用于展示和编辑各种类型的数据,同时也支持异步数据和虚拟滚动等优化性能的特性
+- **渐进式网络应用程序**:集成vite-plugin-pwa,用于将Vue.js或其他前端应用程序转换为具有离线缓存和本地存储能力的PWA
+
+##
黑客节
+加入[Github HackToberFest](https://hacktoberfest.com/) 开始为此项目做出贡献.
+
+## 🔨 开发目录
+
+```
+├─ dolphin-admin -- 海豚vue3-管理系统
+│ ├─build -- 构建打包配置
+│ │ ├─config -- 通用配置
+│ │ ├─generate -- 资源生成配置(less变量,icon)
+│ │ ├─script -- 附加构建脚本
+│ │ ├─vite -- vite配置
+│ ├─docker -- docker容器配置
+│ ├─public -- 公共资源目录
+│ ├─src -- 开发的目录
+│ │ ├─api -- 请求接口
+│ │ │ ├─common -- 通用请求数据类型(根据后端通用实体类定义)
+│ │ │ │ ├─base -- 基础类型
+│ │ │ │ ├─data -- 数据类型
+│ │ │ ├─platform -- 微服务框架平台业务api
+│ │ │ │ ├─common -- 通用业务模块api
+│ │ │ │ ├─core -- 系统核心业务api
+│ │ │ │ ├─monitor -- 运维监控业务模块api
+│ │ │ │ ├─system -- 系统业务模块api
+│ │ ├─assets -- 开发资源目录(会被打包编译)
+│ │ ├─components -- 全局组件
+│ │ │ ├─AMap -- 高德地图设计器
+│ │ │ ├─Application -- 应用核心组件
+│ │ │ ├─Authority -- 角色权限控制
+│ │ │ ├─Basic -- 系统基础组件
+│ │ │ ├─Button -- 按钮
+│ │ │ ├─ClickOutSide -- 元素点击监听包装
+│ │ │ ├─Container -- 组件包装容器
+│ │ │ ├─ContextMenu -- 右击菜单上下文
+│ │ │ ├─CountDown -- 验证码倒计时
+│ │ │ ├─CountTo -- 计数器
+│ │ │ ├─Cropper -- 图片裁剪
+│ │ │ ├─Description -- 详细页面
+│ │ │ ├─Drawer -- 弹出抽屉
+│ │ │ ├─Dropdown -- 下拉列表
+│ │ │ ├─Excel -- Excel导入导出
+│ │ │ ├─Form -- 动态表单
+│ │ │ ├─Icon -- icon图标
+│ │ │ ├─Loading -- 加载遮罩层
+│ │ │ ├─Markdown -- Markdown编辑器
+│ │ │ ├─Menu -- 顶部菜单模式菜单
+│ │ │ ├─Modal -- 弹出模态框
+│ │ │ ├─Page -- 页面包装
+│ │ │ ├─Qrcode -- 二维码生成
+│ │ │ ├─Scrollbar -- 滚动条
+│ │ │ ├─SimpleMenu -- 侧边栏菜单
+│ │ │ ├─StrengthMeter -- 密码强度检查
+│ │ │ ├─Table -- 动态表格
+│ │ │ ├─Time -- 当前时间显示
+│ │ │ ├─Tinymce -- 功能齐全的富文本编辑器
+│ │ │ ├─Transition -- 过度动画
+│ │ │ ├─Tree -- 树形控件
+│ │ │ ├─Upload -- 文件上传
+│ │ ├─directives -- 自定义指令
+│ │ ├─enums -- 全局枚举
+│ │ ├─hooks -- vue组合API钩子工具
+│ │ │ ├─component -- 组件相关钩子
+│ │ │ ├─core -- 系统核心相关钩子
+│ │ │ ├─event -- 事件相关钩子
+│ │ │ ├─setting -- 全局设置相关钩子
+│ │ │ ├─web -- 网页相关钩子
+│ │ ├─layouts -- 系统总布局
+│ │ │ ├─default -- 默认总系统布局框架组件
+│ │ │ ├─iframe -- 内嵌页面
+│ │ │ ├─page -- 路由模块页面
+│ │ ├─locales -- 国际化
+│ │ ├─logics -- 系统全局控制逻辑
+│ │ ├─router -- 路由
+│ │ ├─settings -- 默认全局设置配置
+│ │ ├─store -- 全局状态管理
+│ │ ├─utils -- 工具类
+│ │ │ ├─auth -- 存储授权信息缓存
+│ │ │ ├─cache -- 缓存实例工具
+│ │ │ ├─event -- 事件工具
+│ │ │ ├─factory -- 组件工厂
+│ │ │ ├─file -- 文件工具
+│ │ │ ├─helper -- 路由转换帮助工具
+│ │ │ ├─http -- api请求工具
+│ │ │ ├─lib -- 图表组件库
+│ │ ├─views -- 页面模块组件
+│ │ │ ├─common -- 通用业务页面
+│ │ │ ├─core -- 系统核心业务页面
+│ │ │ ├─dashboard -- 仪表板分析页面
+│ │ │ ├─level -- 多级菜单页面
+│ │ │ ├─monitor -- 运维监控业务页面
+│ │ │ ├─system -- 系统业务页面
+│ ├─types -- 全局类型定义
+```
+
+## 🍀 需要注意的地方
+
+### 1.打包前应该如何执行typescript类型检查
+- **vite是不支持typescript类型检查,因为没必要,现在的开发工具都是支持eslint的,让开发工具接管类型检查就行啦**
+- **vite官网TypeScript介绍:https://vitejs.bootcss.com/guide/features.html#typescript**
+- **注意:既然vite不支持typescript类型检查,那我们就应该要在发布编译阶段手动执行 vue-tsc 命令检查类型是否符合typescript类型规范**
+
+
+## 🤔 一起讨论
+加入我们的 [Discord](https://discord.gg/DREuQWrRYQ) 开始与大家交流。
+
+## 🤗 我想成为开发团队的一员!
+欢迎😀!我们正在寻找有才华的开发者加入我们,让海豚开发平台变得更好!如果您想加入开发团队,请联系我们,非常欢迎您加入我们!💖
+
+## 在线一键设置
+您可以使用 Gitpod,一个在线 IDE(开源免费)来在线贡献或运行示例。
+
+[](https://gitpod.io/#https://github.com/wangxiang4/dolphin-admin)
+
+## 📄 执照
+[Dolphin Development Platform 是获得MIT许可](https://github.com/wangxiang4/dolphin-admin/blob/master/LICENSE) 的开源软件 。
+
diff --git a/cloudreve/docker-compose.yml b/cloudreve/docker-compose.yml
new file mode 100644
index 0000000..be2dcff
--- /dev/null
+++ b/cloudreve/docker-compose.yml
@@ -0,0 +1,16 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+version: "3"
+services:
+ cloudreve:
+ image: xavierniu/cloudreve
+ container_name: cloudreve
+ hostname: cloudreve
+ restart: always
+ volumes:
+ - /usr/software/dockerDatabase/cloudreve/config:/cloudreve/config
+ - /usr/software/dockerDatabase/cloudreve/uploads:/cloudreve/uploads
+ - /usr/software/dockerDatabase/cloudreve/avatar:/cloudreve/avatar
+ ports:
+ - 9005:5212
diff --git a/gitea/docker-compose.yml b/gitea/docker-compose.yml
new file mode 100644
index 0000000..e544c5d
--- /dev/null
+++ b/gitea/docker-compose.yml
@@ -0,0 +1,33 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+# 更多信息请参考官网:https://docs.gitea.io/en-us/install-with-docker/
+version: "3"
+services:
+
+ # git私有库,公司代码管理服务器
+ gitea-server:
+ image: gitea/gitea:1.16.3
+ container_name: gitea-server
+ environment:
+ - GITEA__database__DB_TYPE=mysql
+ - GITEA__database__HOST=124.71.99.36:3158
+ - GITEA__database__NAME=db_gitea
+ - GITEA__database__USER=u_git_account
+ - GITEA__database__PASSWD=#Gitea@&2021%
+ hostname: gitea-server
+ restart: always
+ volumes:
+ #- gitea:/data
+ - /usr/software/dockerDatabase/gitea/data:/data
+ - /usr/software/dockerDatabase/gitea/timezone:/etc/timezone:ro
+ - /usr/software/dockerDatabase/gitea/localtime:/etc/localtime:ro
+ ports:
+ - 8066:3000
+ - 8065:22
+
+# 配置卷
+volumes:
+ gitea:
+ driver: local
diff --git a/keycloak/docker-compose.yml b/keycloak/docker-compose.yml
new file mode 100644
index 0000000..d9a7a41
--- /dev/null
+++ b/keycloak/docker-compose.yml
@@ -0,0 +1,61 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+# 身份验证资源访问管理平台(解决多个系统之间用户数据一致并且提供sso登陆)
+# https://www.keycloak.org/server/all-config
+version: '3'
+services:
+ keycloak:
+ image: bitnami/keycloak:22.0.1-debian-11-r4
+ container_name: keycloak
+ hostname: keycloak
+ restart: always
+ environment:
+ - KEYCLOAK_USER=admin
+ - KEYCLOAK_PASSWORD=kanglai123
+ - DB_VENDOR=postgres
+ - DB_ADDR=postgresql
+ - DB_PORT=5432
+ - DB_DATABASE=kicc_keycloak
+ - DB_SCHEMA=public
+ - DB_USER=postgresql
+ - DB_PASSWORD=kanglai@2023
+ #- KC_HTTP_RELATIVE_PATH=/auth
+ - KEYCLOAK_HTTPS_CERTIFICATE_FILE=/cert/ssl.pem
+ - KEYCLOAK_HTTPS_CERTIFICATE_KEY_FILE=/cert/ssl.key
+ - KEYCLOAK_HTTPS_USE_PEM=true
+ - KEYCLOAK_ENABLE_HTTPS=true
+ - KEYCLOAK_PRODUCTION=true
+ volumes:
+ - /usr/software/dockerDatabase/keycloak/cert:/cert
+ - /usr/software/dockerDatabase/keycloak/data:/opt/jboss/keycloak/standalone/data
+ - /usr/software/dockerDatabase/keycloak/themes:/opt/jboss/keycloak/themes
+ depends_on:
+ - postgresql
+ ports:
+ - 8889:8080
+ - 8443:8443
+ networks:
+ - keycloak_net
+ postgresql:
+ image: postgres:15.3
+ container_name: postgresql
+ hostname: postgresql
+ restart: always
+ environment:
+ POSTGRES_USER: postgresql
+ POSTGRES_PASSWORD: kanglai@2023
+ POSTGRES_DB: kicc_keycloak
+ volumes:
+ - postgresql:/var/lib/postgresql/data
+ ports:
+ - 5438:5432
+ networks:
+ - keycloak_net
+
+volumes:
+ postgresql:
+ driver: local
+
+networks:
+ keycloak_net: {}
diff --git a/kkFileView/docker-compose.yml b/kkFileView/docker-compose.yml
new file mode 100644
index 0000000..357cc56
--- /dev/null
+++ b/kkFileView/docker-compose.yml
@@ -0,0 +1,25 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+version: "3"
+services:
+ fileview:
+ image: keking/kkfileview:latest
+ container_name: kicc-fileview
+ hostname: kicc-fileview
+ restart: always
+ environment:
+ # https://github.com/kekingcn/kkFileView/blob/master/server/src/main/config/application.properties
+ KK_FILE_DIR: "/file"
+ KK_FILE_UPLOAD_ENABLED: true
+ networks:
+ - docker-cloud_default
+ volumes:
+ - /usr/software/dockerDatabase/kicc-fileview/file:/file
+ ports:
+ - 8086:8012
+
+networks:
+ docker-cloud_default:
+ external: true
diff --git a/mysql/conf/my.cnf b/mysql/conf/my.cnf
new file mode 100644
index 0000000..d9e6f00
--- /dev/null
+++ b/mysql/conf/my.cnf
@@ -0,0 +1,37 @@
+[mysqld]
+# 跨库多表连接查询
+federated = 1
+# 设置3306端口
+port = 3306
+# 允许最大连接数
+max_connections = 2000
+# 创建新表时将使用的默认存储引擎
+default-storage-engine = INNODB
+# 不区分大小写
+lower_case_table_names = 1
+# 禁止域名解析
+skip-name-resolve = 1
+# 记录错误日志
+log_error = /var/log/mysql/error.log
+# 指定传输数据包大小
+max_allowed_packet = 1024M
+# 客户端高并发等待连接队列
+back_log = 2048
+# 移除 SQL92(ONLY_FULL_GROUP_BY) 标准使用GROUP BY函数查出来的列必须在包含在 GROUP BY 中
+sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
+# 日志保留30天
+expire_logs_days = 30
+# 记录查询日志
+slow_query_log_file = /var/log/mysql/mysql-slow.log
+# 启用慢查询日志记录
+slow_query_log = 1
+# 指定超过1秒为慢查询
+long_query_time = 1
+# 缓冲池大小
+innodb_buffer_pool_size = 2G
+# I/O 写入的线程数量
+innodb_write_io_threads = 8
+# I/O 读取的线程数量
+innodb_read_io_threads = 24
+# 缓冲池的实例数
+innodb_buffer_pool_instances=32
diff --git a/mysql/docker-compose.yml b/mysql/docker-compose.yml
new file mode 100644
index 0000000..106ad33
--- /dev/null
+++ b/mysql/docker-compose.yml
@@ -0,0 +1,29 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+version: '3'
+services:
+ # mysql 服务器
+ mysql:
+ image: mysql:5.7.32
+ container_name: mysql
+ hostname: mysql
+ environment:
+ TZ: Asia/Shanghai
+ MYSQL_ROOT_PASSWORD: kanglai@2022
+ command:
+ --character-set-server=utf8mb4
+ --collation-server=utf8mb4_general_ci
+ --explicit_defaults_for_timestamp=true
+ volumes:
+ - mysql:/var/lib/mysql
+ - /usr/software/dockerDatabase/mysql/my.cnf:/etc/mysql/my.cnf
+ restart: always
+ ports:
+ - 8052:3306
+
+# 配置卷
+volumes:
+ mysql:
+ driver: local
diff --git a/nacos/.env.development b/nacos/.env.development
new file mode 100644
index 0000000..e3e66de
--- /dev/null
+++ b/nacos/.env.development
@@ -0,0 +1,10 @@
+MODE=standalone
+PREFER_HOST_MODE=hostname
+NACOS_APPLICATION_PORT=8848
+SPRING_DATASOURCE_PLATFORM=mysql
+MYSQL_SERVICE_HOST=139.9.72.189
+MYSQL_SERVICE_DB_NAME=kicc_config
+MYSQL_SERVICE_PORT=8052
+MYSQL_SERVICE_USER=u_kanglai_account
+MYSQL_SERVICE_PASSWORD='$kanglai.<2021>#'
+NACOS_AUTH_TOKEN_EXPIRE_SECONDS=18000
diff --git a/nacos/.env.production b/nacos/.env.production
new file mode 100644
index 0000000..16be146
--- /dev/null
+++ b/nacos/.env.production
@@ -0,0 +1,10 @@
+MODE=standalone
+PREFER_HOST_MODE=hostname
+NACOS_APPLICATION_PORT=8848
+SPRING_DATASOURCE_PLATFORM=mysql
+MYSQL_SERVICE_HOST=124.71.99.36
+MYSQL_SERVICE_DB_NAME=db_kicc_config
+MYSQL_SERVICE_PORT=3158
+MYSQL_SERVICE_USER=u_kicc_account
+MYSQL_SERVICE_PASSWORD='#KICC$(2023)&0215'
+NACOS_AUTH_TOKEN_EXPIRE_SECONDS=18000
diff --git a/nacos/README.md b/nacos/README.md
new file mode 100644
index 0000000..2a05ba0
--- /dev/null
+++ b/nacos/README.md
@@ -0,0 +1,17 @@
+
+```bash
+#配置docker镜像代理
+sudo mkdir -p /etc/docker
+sudo tee /etc/docker/daemon.json <<-'EOF'
+{
+ "registry-mirrors": [
+ "https://bd6wzfvy.mirror.aliyuncs.com",
+ "https://hub-mirror.c.163.com",
+ "https://mirror.baidubce.com"
+ ]
+}
+
+EOF
+sudo systemctl daemon-reload
+sudo systemctl restart docker
+```
diff --git a/nexus/docker-compose.yml b/nexus/docker-compose.yml
new file mode 100644
index 0000000..35a3c0a
--- /dev/null
+++ b/nexus/docker-compose.yml
@@ -0,0 +1,21 @@
+# PROJECT: dolphin
+# VERSION: 1.0.0
+# Author: wangxiang4
+# Maven私有库
+# https://github.com/sonatype/docker-nexus3
+# https://registry.hub.docker.com/r/sonatype/nexus3
+# password is kanglai@2023
+version: "3"
+services:
+ nexus:
+ image: sonatype/nexus3:3.58.1
+ container_name: nexus
+ hostname: nexus
+ restart: always
+ ports:
+ - 7779:8081
+ volumes:
+ - nexus-data:/nexus-data
+
+volumes:
+ nexus-data: {}
diff --git a/nginx/Dockerfile b/nginx/Dockerfile
new file mode 100644
index 0000000..41b2418
--- /dev/null
+++ b/nginx/Dockerfile
@@ -0,0 +1,9 @@
+FROM nginx
+
+COPY ./secret /secret
+
+RUN rm /etc/nginx/conf.d/default.conf
+
+ADD default.conf /etc/nginx/conf.d/
+
+RUN /bin/bash -c 'echo init ok'
diff --git a/nginx/default.conf b/nginx/default.conf
new file mode 100644
index 0000000..24b5af4
--- /dev/null
+++ b/nginx/default.conf
@@ -0,0 +1,36 @@
+# 如果没有显式声明 default server 则第一个 server 会被隐式的设为 default server
+server {
+ # 自定义访问端口
+ listen 80;
+ # 服务名称
+ server_name git.kanglailab.com;
+ location / {
+ proxy_pass http://localhost:8066;
+ }
+}
+
+server {
+ # 自定义访问端口
+ listen 80;
+ # 服务名称
+ server_name fileview.kanglailab.com;
+ location / {
+ proxy_pass http://localhost:8086;
+ }
+}
+
+# docker连接ssl安全代理
+server {
+ listen 443 ssl;
+ server_name docker-tools.klkics.com;
+
+ ssl_certificate /secret/139.9.72.189/server-cert.pem;
+ ssl_certificate_key /secret/139.9.72.189/server-key.pem;
+ # 启用客户端证书验证
+ ssl_client_certificate /secret/139.9.72.189/ca.pem;
+ ssl_verify_client on;
+
+ location / {
+ proxy_pass http://localhost:2279;
+ }
+}
diff --git a/nginx/docker-compose.yaml b/nginx/docker-compose.yaml
new file mode 100644
index 0000000..9a7ac32
--- /dev/null
+++ b/nginx/docker-compose.yaml
@@ -0,0 +1,16 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+version: '3'
+services:
+ nginx:
+ build:
+ context: .
+ restart: always
+ container_name: nginx
+ image: nginx
+ network_mode: 'host'
+ ports:
+ - 80:80
+ - 443:443
diff --git a/nginx/secret/139.9.72.189/ca.pem b/nginx/secret/139.9.72.189/ca.pem
new file mode 100644
index 0000000..41f752c
--- /dev/null
+++ b/nginx/secret/139.9.72.189/ca.pem
@@ -0,0 +1,33 @@
+-----BEGIN CERTIFICATE-----
+MIIFsDCCA5gCCQDWLz8mWUwmsTANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMC
+Q04xETAPBgNVBAgMCENoYW5nU2hhMRIwEAYDVQQHDAlXYW5nQ2hlbmcxEDAOBgNV
+BAoMB2RvbHBoaW4xDDAKBgNVBAsMA2RldjEgMB4GA1UEAwwXZG9ja2VyLXRvb2xz
+Lmtsa2ljcy5jb20xIDAeBgkqhkiG9w0BCQEWETE4Mjc5NDU5MTFAcXEuY29tMCAX
+DTIzMDkxNDE0MDYxN1oYDzIxMjMwODIxMTQwNjE3WjCBmDELMAkGA1UEBhMCQ04x
+ETAPBgNVBAgMCENoYW5nU2hhMRIwEAYDVQQHDAlXYW5nQ2hlbmcxEDAOBgNVBAoM
+B2RvbHBoaW4xDDAKBgNVBAsMA2RldjEgMB4GA1UEAwwXZG9ja2VyLXRvb2xzLmts
+a2ljcy5jb20xIDAeBgkqhkiG9w0BCQEWETE4Mjc5NDU5MTFAcXEuY29tMIICIjAN
+BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAr7wb3SxdAkkd/bElupSV2G1zgHLa
+C95CS2V2RanDISvQO/w7LbZsbYv8h+rAC96ExXeX4pkhMywWN8I42DvqP1TUGP0F
+wGIi0RlYzcCyhu8J94sx3ntcWFDMJ19Ub7q9YEPH4R1DwzBOF5lJeZb72zcuHzxr
+0T4CK2UDFPhAzu1n6AZc37LS3oobKN6CNCegUAkaxnTj2AKDHx5QOnx4ZlfboNju
+Y7ncAfZi7VYmWFsatEymTR/85wKWIIrOxuhGUa27zjM7vm+sc3rKT22RWMCqSceV
+5UA1++6kMjZl/InXGG6k0rTAJLO4XUcYAV5Manx922Pbiv7QR3R3RpkWwMHtyMYF
+EhIlRtk7v9kVoKhy7ez011EPgxLvB+kqz9Z+y88rsP/h3CPAbYDTM+Q8zFLG/qkK
+io+/m+5ZsQPAYO8kIKsom9iEoAKFgsi4v7WYdLlmiOgBig4JLrpLTOsAeTP+9fxZ
+Eqt2+nb9r9KGSNr6Cz3uaD0dTySpY62283MxAYQFQWDYwtBdfStGCqJBnhWjj4e1
+3Hzrls/0MuxaiKQ/2dB+s6aA7aQ+gf4+aEG8SyVgbW9T01uefYkydDq2G2b0yaVU
+8JpiaNnjMr2wd6RljTdYTTfaGRlmVOsPVCms3WlwQ0UUDCukmL3dqmI8qbhZZxzZ
+c2qI7DJsp602y1kCAwEAATANBgkqhkiG9w0BAQsFAAOCAgEAC8aqFgxKsFc4YDdX
+C93xEU689RbFR0BMphwbxeSt4F//jfbBnlCRqFhuvhFjquHOD08OGjKpEmBvKA7P
+yoE6UBEraWgHVvNbRwAPCX8w7Nf+XaRIpO9uqTE+yH4JcxZASgFirhanrjH4i4Au
+PyfGgt079N7vNWjsT3OfzKRiNh6NLXMCyN/8fT++C0tZwjT1WSyn5qoOz3kn+nWh
+XVaU91LVu1vzlpjzwHCkBh9aU7YLK0tDjMyP8qXHl30X6OIHicwiJ0MarkPxYoc7
+S8gzWtOCjL04C0qqHXh/LqkhxInz1myDm7hKc/hjzZxbVhUEOEJHhTLUNGjWvH7V
+UWFoKReJIgypOqwPqxX02745rgG3uYrC12VMO6mcx/TC/LcOJmhE2CaAFWEE5mC6
+lsihGtikrs47echFduO60oeSQ0gtwwkVyM2zjMYwarboek7RhBouPwETiHPntmMn
+xp10wpIxN7ltQlIz8XEYOuwpOSbmao6OieEjcvwKEza2d1JsridwVTaWcbTFDU2p
+PhIlOLLghOS4Eb1R1GqPF/V+oyCRfAS2bkX8AqVgvS4DMZTvVTxYdvQCThA/7HjE
+Eyi/cWJUGo5wxys0IvdKSy5fuEbyrX96+n1la7cVezk6N+ETUwN81GeY2khmfpUm
+YAZsQ/bD+nsESmlmRaL844zZXgA=
+-----END CERTIFICATE-----
diff --git a/nginx/secret/139.9.72.189/cert.pem b/nginx/secret/139.9.72.189/cert.pem
new file mode 100644
index 0000000..21b9ff7
--- /dev/null
+++ b/nginx/secret/139.9.72.189/cert.pem
@@ -0,0 +1,31 @@
+-----BEGIN CERTIFICATE-----
+MIIFRjCCAy6gAwIBAgIJAJwFrq2p2N5sMA0GCSqGSIb3DQEBCwUAMIGYMQswCQYD
+VQQGEwJDTjERMA8GA1UECAwIQ2hhbmdTaGExEjAQBgNVBAcMCVdhbmdDaGVuZzEQ
+MA4GA1UECgwHZG9scGhpbjEMMAoGA1UECwwDZGV2MSAwHgYDVQQDDBdkb2NrZXIt
+dG9vbHMua2xraWNzLmNvbTEgMB4GCSqGSIb3DQEJARYRMTgyNzk0NTkxMUBxcS5j
+b20wIBcNMjMwOTE0MTQwNjE5WhgPMjEyMzA4MjExNDA2MTlaMBExDzANBgNVBAMM
+BmNsaWVudDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALVOKNpTStYr
+yvFcjpcN5O3Tyyap7iK9Yw+fih+PZs7t2QYRldwxhayPnanNtMETbC/b+fUVuX3A
+nSt9KTJJdmEcN/5UnLdh6BLmwjN31yFvmor3d2+OpnFMoT9En1CZU1KWsnKg35ZW
+w09+5/Ebks6K+bOXeB7o3EY7JEOXCvyMAQrQ1SL9WMcF3RRqY5wJ3UlWUI8vVowc
+1WTmh8ZtyKLuNYBhdb95edwmxYOZBJxceLzzJEGsQ6NCkXN3zEXjUb84KRXeijtQ
+oa177MFiLfABJZYMf4wwCRgy76GcaVsZCePuHPcXZj6XytxuPOpRDpPJVH23cL+v
+dlroHOwr2U++53No0Wz24lRvFB3KcwzobMdeOJI31JF0mzxwCRLSjCu//uj3LFr/
+1OD5Ctou3vkSPmGs3k0Scxnep+gbN9WpJVCNub/ZOTS5jcRc8vnhmFvescBtVI1c
++bjBcnB8HPV3e1yZwRy5EVqkuQjQRdZrhJYkXz5o4H1GAi9rhIUU8x/2mUh+nV0T
+8/vW+fv/Zt9W2eLD3tsBUib3l1AmqQCOBiMuogxvTSXwpD6+oHL/K+cCuABbRmtu
+bpeMp1x2rsguGvi1C5NVIsv6xXI+evoB6eJ6SDQAYOcEy4WRFLRpzO8+zjbBKoV3
+/0a+Y+eb3+VLUYRyCaqYPvP3P5EeV5UTAgMBAAGjFzAVMBMGA1UdJQQMMAoGCCsG
+AQUFBwMCMA0GCSqGSIb3DQEBCwUAA4ICAQAmQkMF4NA28xTZSZ+U7+pjeiM8Q68N
+WIjyyRmI1BkU3RIT+mR19imcr+6CI0FgsV4/zQ1pCc7QME6jTrON7fk98wAeVrkP
+Q07iHzX5kWvSDlZmYE9h0e3X1ded3F/UQQKWLeIpyLox6Rp4A4nQzacGfUmA8gr+
+0yQylMdnxpEA68s63ipix03s9fvqu9jZUeitVKbCCVXhwldch4Fx2E+gLqd8YinK
+lzMeMIA/en1udQjyjm0bbSnyuBnzAU//VgO3DBxc+9wUtNNZj5hzYJvPb/B2R7dy
+6nyX2bo+lMK+8IFOKm2gk8ADfRC8syHnpbMZwcyDs0ZqoRV7fhrQJMN3hXVSLyCO
+umY+6TdPoV09oqsIOLBbWYoUtKRyHyVbGzksGLrVi99aRAbrJSVaEA5AX/Wx/uGL
+r/wyij7Ueo/6Ocn4Ms0QZZu+g1haX2KKWgZu/1g4L1z56hz7OXwgRmS/y38IQYzs
+OLpFCQAQjPhXILyqxMM5vl6997eS34VbFPOBlbdpkNlLR8l6MDTbn8KaiQbrY4oQ
+c7VLAp2CCTAM6HRLwTVsgTr0B/3IpwdQXLAA/vKb3lr7wjXMU/W2AuLrMn7ncbtc
+d7+nbVM83oss889DrV2LnSjYwHLqHowlbRYnYA6bj0O9lk60EJApRcz+4XwoLKii
+MgJtL1mOdEA6ZQ==
+-----END CERTIFICATE-----
diff --git a/nginx/secret/139.9.72.189/docker-ssl-server.sh b/nginx/secret/139.9.72.189/docker-ssl-server.sh
new file mode 100755
index 0000000..ccea70e
--- /dev/null
+++ b/nginx/secret/139.9.72.189/docker-ssl-server.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+#相关配置信息
+HOST="139.9.72.189"
+PASSWORD="springcloudgateway"
+COUNTRY="CN"
+STATE="ChangSha"
+CITY="WangCheng"
+ORGANIZATION="dolphin"
+ORGANIZATIONAL_UNIT="dev"
+EMAIL="1827945911@qq.com"
+###开始生成文件###
+echo "开始生成文件"
+#切换到生产密钥的目录
+mkdir -p /opt/docker/certs
+cd /opt/docker/certs
+#生成ca私钥(使用aes256加密)
+openssl genrsa -aes256 -passout pass:$PASSWORD -out ca-key.pem 4096
+#生成ca证书,填写配置信息(签发了100年)
+openssl req -new -x509 -passin "pass:$PASSWORD" -days 36500 -key ca-key.pem -sha256 -out ca.pem -subj "/C=$COUNTRY/ST=$STATE/L=$CITY/O=$ORGANIZATION/OU=$ORGANIZATIONAL_UNIT/CN=$HOST/emailAddress=$EMAIL"
+#生成server证书私钥文件
+openssl genrsa -out server-key.pem 4096
+#生成server证书请求文件
+openssl req -subj "/CN=$HOST" -sha256 -new -key server-key.pem -out server.csr
+#使用CA证书及CA密钥以及上面的server证书请求文件进行签发,生成server自签证书
+sh -c 'echo "subjectAltName=DNS:'$HOST',IP:'$HOST'" > extfile.cnf'
+sh -c 'echo "extendedKeyUsage=serverAuth" >> extfile.cnf'
+openssl x509 -req -days 36500 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -passin "pass:$PASSWORD" -CAcreateserial -out server-cert.pem -extfile extfile.cnf
+#生成client证书RSA私钥文件
+openssl genrsa -out key.pem 4096
+#生成client证书请求文件
+openssl req -subj '/CN=client' -new -key key.pem -out client.csr
+sh -c 'echo "extendedKeyUsage=clientAuth" > extfile-client.cnf'
+#生成client自签证书(根据上面的client私钥文件、client证书请求文件生成)
+openssl x509 -req -days 36500 -sha256 -in client.csr -CA ca.pem -CAkey ca-key.pem -passin "pass:$PASSWORD" -CAcreateserial -out cert.pem -extfile extfile-client.cnf
+#更改密钥权限
+chmod 0400 ca-key.pem key.pem server-key.pem
+#更改密钥权限
+chmod 0444 ca.pem server-cert.pem cert.pem
+#删除无用文件
+rm client.csr server.csr
+echo "生成文件完成"
+###生成结束###
diff --git a/nginx/secret/139.9.72.189/docker-ssl.sh b/nginx/secret/139.9.72.189/docker-ssl.sh
new file mode 100755
index 0000000..e11b635
--- /dev/null
+++ b/nginx/secret/139.9.72.189/docker-ssl.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+#相关配置信息
+HOST="docker-tools.klkics.com"
+PASSWORD="springcloudgateway"
+COUNTRY="CN"
+STATE="ChangSha"
+CITY="WangCheng"
+ORGANIZATION="dolphin"
+ORGANIZATIONAL_UNIT="dev"
+EMAIL="1827945911@qq.com"
+###开始生成文件###
+echo "开始生成文件"
+#切换到生产密钥的目录
+mkdir -p /Users/wangxiang/IdeaProjects/org/kicc/docker-cloud/nginx/secret/139.9.72.189
+cd /Users/wangxiang/IdeaProjects/org/kicc/docker-cloud/nginx/secret/139.9.72.189
+#生成ca私钥(使用aes256加密)
+openssl genrsa -aes256 -passout pass:$PASSWORD -out ca-key.pem 4096
+#生成ca证书,填写配置信息(签发了100年)
+openssl req -new -x509 -passin "pass:$PASSWORD" -days 36500 -key ca-key.pem -sha256 -out ca.pem -subj "/C=$COUNTRY/ST=$STATE/L=$CITY/O=$ORGANIZATION/OU=$ORGANIZATIONAL_UNIT/CN=$HOST/emailAddress=$EMAIL"
+#生成server证书私钥文件
+openssl genrsa -out server-key.pem 4096
+#生成server证书请求文件
+openssl req -subj "/CN=$HOST" -sha256 -new -key server-key.pem -out server.csr
+#使用CA证书及CA密钥以及上面的server证书请求文件进行签发,生成server自签证书
+sh -c 'echo "subjectAltName=DNS:'$HOST'" > extfile.cnf'
+sh -c 'echo "extendedKeyUsage=serverAuth" >> extfile.cnf'
+openssl x509 -req -days 36500 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -passin "pass:$PASSWORD" -CAcreateserial -out server-cert.pem -extfile extfile.cnf
+#生成client证书RSA私钥文件
+openssl genrsa -out key.pem 4096
+#生成client证书请求文件
+openssl req -subj '/CN=client' -new -key key.pem -out client.csr
+sh -c 'echo "extendedKeyUsage=clientAuth" > extfile-client.cnf'
+#生成client自签证书(根据上面的client私钥文件、client证书请求文件生成)
+openssl x509 -req -days 36500 -sha256 -in client.csr -CA ca.pem -CAkey ca-key.pem -passin "pass:$PASSWORD" -CAcreateserial -out cert.pem -extfile extfile-client.cnf
+#更改密钥权限
+chmod 0400 ca-key.pem key.pem server-key.pem
+#更改密钥权限
+chmod 0444 ca.pem server-cert.pem cert.pem
+#删除无用文件
+rm client.csr server.csr
+echo "生成文件完成"
+###生成结束###
diff --git a/nginx/secret/139.9.72.189/key.pem b/nginx/secret/139.9.72.189/key.pem
new file mode 100644
index 0000000..1c2fb47
--- /dev/null
+++ b/nginx/secret/139.9.72.189/key.pem
@@ -0,0 +1,51 @@
+-----BEGIN RSA PRIVATE KEY-----
+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
+-----END RSA PRIVATE KEY-----
diff --git a/nginx/secret/139.9.72.189/server-cert.pem b/nginx/secret/139.9.72.189/server-cert.pem
new file mode 100644
index 0000000..2103084
--- /dev/null
+++ b/nginx/secret/139.9.72.189/server-cert.pem
@@ -0,0 +1,32 @@
+-----BEGIN CERTIFICATE-----
+MIIFezCCA2OgAwIBAgIJAJwFrq2p2N5rMA0GCSqGSIb3DQEBCwUAMIGYMQswCQYD
+VQQGEwJDTjERMA8GA1UECAwIQ2hhbmdTaGExEjAQBgNVBAcMCVdhbmdDaGVuZzEQ
+MA4GA1UECgwHZG9scGhpbjEMMAoGA1UECwwDZGV2MSAwHgYDVQQDDBdkb2NrZXIt
+dG9vbHMua2xraWNzLmNvbTEgMB4GCSqGSIb3DQEJARYRMTgyNzk0NTkxMUBxcS5j
+b20wIBcNMjMwOTE0MTQwNjE4WhgPMjEyMzA4MjExNDA2MThaMCIxIDAeBgNVBAMM
+F2RvY2tlci10b29scy5rbGtpY3MuY29tMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A
+MIICCgKCAgEA2XURwjsCg97n4hd7IGSY+5Ie3puC0YbJQvZBfuaLWUHJa7hhypSU
+7pC2ptRvNGpm1ZqJa2n6sSQEMbmplHr+LD2iJRe45gIb3XMGVnNZpZce64Ho5d8e
+VeChieRRaIERh3GHlEusT0zHHSRmJW1l/zOWvkuqbq4tBlV2oL7kImk82xo7izee
+uFsbeFm5zETWosTPF8R/kzcDcoFkLN3SsELkcswN3YceCjVvybzsTlTjAORqjYUH
+sWe1xXhtuKJzjGNl7nOn+y1URfEiCX+sT4W/ICasHjLxaon1Bq8J9ckkw2zKtb2y
+nchc2LHBX6MSD/r5gmxU+ycQHdCPaJtAje6B+2kMy5Sb0ETYOQBHe5mCDn+PReJD
+kIiTfXok0xoVtdS7FlEhtn0Ot8YjVTBNTbqGfEa1H0LAw5IOL9Yx3uZP92Cr8Npu
++E2oDftwT54DTOvJJRKrCpN4VX0KUkZCpSI1LVaGAZValvB04JgOG8COpfiA3mFD
+zeu2M9qL+AqslStQg+y0hod8cNCFn71LHBTY/NCFBHGXowedlnmRCg/AME+5+l8K
+uFk+jcjKL7/2Cg4PGQ4OUrIAGeBkKs1YxWdhSJ5MIl+Z9fiximvHPEAZKbPHeoYf
+e57QqDjEsijGrCd2FZPUETCiufKOHuMNt7Le0IVJDn8RgctaGoKjtb0CAwEAAaM7
+MDkwIgYDVR0RBBswGYIXZG9ja2VyLXRvb2xzLmtsa2ljcy5jb20wEwYDVR0lBAww
+CgYIKwYBBQUHAwEwDQYJKoZIhvcNAQELBQADggIBACY6tNKnNxzMI+Kgb24ksdOT
+aNloMTYCjpqsBWSQzRtfmX2FDOT773xL3yFefdAQ1mGtA7MzxM8YJ7HglreQEpPo
+ct8x62KqyvLaATzBhRqcolLOaZhde1wSQ+/Ti3USftZZASKbL9WKCb+dbXY7l4kM
+xXl+4iO3vri/KpvunwcwKXthNTOIrAnJMA0NXvazM1yRrMJ79UfiIkjdEbmcvDJE
+aRBQponQ7mYQrKAYqEcS9bUWpk9Pf+K38rjxxeI7EmNAHoWL+z0Ji9yjJ0b7XM+l
+ICW6MZMavzoik8ZyOuKJMhcLN9vtS5NPJVOTt/uybK+6rzc6MNzTcR1iaRLTN7+l
+MJyDDKNARtb3Z6YGxtt+FO2XvRSCjbo75xermydaZS3eJ0WX2FBWRAqPe7AJg1CO
+ttlL+AWiQ6Y1cWHKUqw6XKwkz7UYF+udWqUadp7LlIkbrhcduhVdwIss4qXbF5py
+rJQM0RG7/oXBI915OD06Wevf7MbIcNieUcmGfQzgRif9j4AwpucH19ibGth27aGP
+uVHjrfy3oWIggNLOMPJnwPgdTz1LBwmm7Mz7xwYGEoqoVYUGFp7ICEJE1VoPBAku
+CqkKczc+d6f5J3oHGCGqG+IbXUhx86Wn17dO+lixYrHKDfiJkFB9/O/m7GHDm8/q
+arEYsUhNJes5LhdVDv6H
+-----END CERTIFICATE-----
diff --git a/nginx/secret/139.9.72.189/server-key.pem b/nginx/secret/139.9.72.189/server-key.pem
new file mode 100644
index 0000000..77ea195
--- /dev/null
+++ b/nginx/secret/139.9.72.189/server-key.pem
@@ -0,0 +1,51 @@
+-----BEGIN RSA PRIVATE KEY-----
+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
+-----END RSA PRIVATE KEY-----
diff --git a/oracle/docker-compose.yml b/oracle/docker-compose.yml
new file mode 100644
index 0000000..dbdeb0b
--- /dev/null
+++ b/oracle/docker-compose.yml
@@ -0,0 +1,22 @@
+# PROJECT: dolphin
+# VERSION: 1.0.0
+# Author: wangxiang4
+
+# https://support.websoft9.com/docs/docker/zh/solution-compose.html#command
+version: "3"
+services:
+ oracleservice:
+ image: gvenzl/oracle-xe:11
+ container_name: oracledb
+ environment:
+ #设置sys和system用户密码
+ ORACLE_PASSWORD: wangxiang4123456123456
+ #自定义用户
+ APP_USER: wangxiang4
+ #自定义用户密码
+ APP_USER_PASSWORD: wangxiang4123456
+ ports:
+ - 1521:1521
+ volumes:
+ - /usr/software/dockerDatabase/oracle/oradata:/u01/app/oracle/oradata
+ restart: always
diff --git a/portainer/docker-compose.yml b/portainer/docker-compose.yml
new file mode 100644
index 0000000..4da7f75
--- /dev/null
+++ b/portainer/docker-compose.yml
@@ -0,0 +1,24 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+# https://support.websoft9.com/docs/docker/zh/solution-compose.html#command
+version: '3'
+services:
+
+ # docker管理面板,已经中文汉化
+ portainer:
+ image: 6053537/portainer-ce
+ container_name: portainer
+ hostname: portainer
+ volumes:
+ - portainer_data:/data
+ - /usr/software/dockerDatabase/portainer/docker.sock:/var/run/docker.sock
+ restart: always
+ ports:
+ - 8051:9000
+
+# 配置卷
+volumes:
+ portainer_data:
+ driver: local
diff --git a/redis/conf/redis.conf b/redis/conf/redis.conf
new file mode 100644
index 0000000..e69de29
diff --git a/redis/docker-compose.yml b/redis/docker-compose.yml
new file mode 100644
index 0000000..7bae44b
--- /dev/null
+++ b/redis/docker-compose.yml
@@ -0,0 +1,25 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+# https://support.websoft9.com/docs/docker/zh/solution-compose.html#command
+version: '3'
+services:
+
+ # redis服务器
+ redis:
+ image: redis:6.2.6
+ container_name: redis
+ hostname: redis
+ restart: always
+ ports:
+ - 6379:6379
+ command: redis-server --requirepass kanglai@2022
+ volumes:
+ - redis:/data
+ - /usr/software/dockerDatabase/redis/redis.conf:/usr/local/etc/redis/redis.conf
+
+# 配置卷
+volumes:
+ redis:
+ driver: local
diff --git a/rocketmq/brokerconf/broker.conf b/rocketmq/brokerconf/broker.conf
new file mode 100644
index 0000000..9ba6283
--- /dev/null
+++ b/rocketmq/brokerconf/broker.conf
@@ -0,0 +1,96 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+# 所属集群名字
+brokerClusterName=DefaultCluster
+
+# broker 名字,注意此处不同的配置文件填写的不一样,如果在 broker-a.properties 使用: broker-a,
+# 在 broker-b.properties 使用: broker-b
+brokerName=broker-a
+
+# 0 表示 Master,> 0 表示 Slave
+brokerId=0
+
+# nameServer地址,分号分割
+# namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
+
+# 启动IP,如果 docker 报 com.alibaba.rocketmq.remoting.exception.RemotingConnectException: connect to <192.168.0.120:10909> failed
+# 解决方式1 加上一句 producer.setVipChannelEnabled(false);,解决方式2 brokerIP1 设置宿主机IP,不要使用docker 内部IP
+brokerIP1=192.168.3.10
+
+# 在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
+defaultTopicQueueNums=4
+
+# 是否允许 Broker 自动创建 Topic,建议线下开启,线上关闭 !!!这里仔细看是 false,false,false
+autoCreateTopicEnable=true
+
+# 是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
+autoCreateSubscriptionGroup=true
+
+# Broker 对外服务的监听端口
+listenPort=10911
+
+# 删除文件时间点,默认凌晨4点
+deleteWhen=04
+
+# 文件保留时间,默认48小时
+fileReservedTime=120
+
+# commitLog 每个文件的大小默认1G
+mapedFileSizeCommitLog=1073741824
+
+# ConsumeQueue 每个文件默认存 30W 条,根据业务情况调整
+mapedFileSizeConsumeQueue=300000
+
+# destroyMapedFileIntervalForcibly=120000
+# redeleteHangedFileInterval=120000
+# 检测物理文件磁盘空间
+diskMaxUsedSpaceRatio=88
+# 存储路径
+# storePathRootDir=/home/ztztdata/rocketmq-all-4.1.0-incubating/store
+# commitLog 存储路径
+# storePathCommitLog=/home/ztztdata/rocketmq-all-4.1.0-incubating/store/commitlog
+# 消费队列存储
+# storePathConsumeQueue=/home/ztztdata/rocketmq-all-4.1.0-incubating/store/consumequeue
+# 消息索引存储路径
+# storePathIndex=/home/ztztdata/rocketmq-all-4.1.0-incubating/store/index
+# checkpoint 文件存储路径
+# storeCheckpoint=/home/ztztdata/rocketmq-all-4.1.0-incubating/store/checkpoint
+# abort 文件存储路径
+# abortFile=/home/ztztdata/rocketmq-all-4.1.0-incubating/store/abort
+# 限制的消息大小
+maxMessageSize=65536
+
+# flushCommitLogLeastPages=4
+# flushConsumeQueueLeastPages=2
+# flushCommitLogThoroughInterval=10000
+# flushConsumeQueueThoroughInterval=60000
+
+# Broker 的角色
+# - ASYNC_MASTER 异步复制Master
+# - SYNC_MASTER 同步双写Master
+# - SLAVE
+brokerRole=ASYNC_MASTER
+
+# 刷盘方式
+# - ASYNC_FLUSH 异步刷盘
+# - SYNC_FLUSH 同步刷盘
+flushDiskType=ASYNC_FLUSH
+
+# 发消息线程池数量
+# sendMessageThreadPoolNums=128
+# 拉消息线程池数量
+# pullMessageThreadPoolNums=128
diff --git a/rocketmq/docker-compose.yml b/rocketmq/docker-compose.yml
new file mode 100644
index 0000000..3327c2e
--- /dev/null
+++ b/rocketmq/docker-compose.yml
@@ -0,0 +1,51 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+# rocketmq参考:https://rocketmq.apache.org/docs/%E4%BB%8B%E7%BB%8D/03whatis
+# https://support.websoft9.com/docs/docker/zh/solution-compose.html#command
+version: '3'
+services:
+ # rocketmq代理发现注册服务
+ rmqnamesrv:
+ image: foxiswho/rocketmq:server
+ container_name: rmqnamesrv
+ restart: always
+ ports:
+ - 9876:9876
+ volumes:
+ - /usr/software/dockerDatabase/rocketmq/namesrv/logs:/opt/logs
+ - /usr/software/dockerDatabase/rocketmq/namesrv/store:/opt/store
+ networks:
+ rmq:
+ aliases:
+ - rmqnamesrv
+
+ # rocketmq核心消息发送存储代理
+ rmqbroker:
+ image: foxiswho/rocketmq:broker
+ container_name: rmqbroker
+ restart: always
+ ports:
+ - 10909:10909
+ - 10911:10911
+ volumes:
+ - /usr/software/dockerDatabase/rocketmq/namesrv/logs:/opt/logs
+ - /usr/software/dockerDatabase/rocketmq/namesrv/store:/opt/store
+ - /usr/software/dockerDatabase/rocketmq/broker/brokerconf/broker.conf:/etc/rocketmq/broker.conf
+ environment:
+ NAMESRV_ADDR: "rmqnamesrv:9876"
+ JAVA_OPTS: "-Duser.home=/opt"
+ JAVA_OPT_EXT: "-server -Xms128m -Xmx128m -Xmn128m"
+ command: mqbroker -c /etc/rocketmq/broker.conf
+ depends_on:
+ - rmqnamesrv
+ networks:
+ rmq:
+ aliases:
+ - rmqbroker
+
+# 局域网网关配置
+networks:
+ rmq:
+ driver: bridge
diff --git a/seata/conf/nacos/README.md b/seata/conf/nacos/README.md
new file mode 100644
index 0000000..8dafe37
--- /dev/null
+++ b/seata/conf/nacos/README.md
@@ -0,0 +1,15 @@
+
+##nacos-config.sh
+| 命令 | 描述 | 默认 |
+|------|-----------|-------------|
+|-h | nacos主机地址 | 127.0.0.1 |
+|-p | nacos主机端口 | 8848 |
+|-g | nacos分组名称 | public |
+|-t | nacos命名空间 | DEFAULT_GROUP |
+|-u | nacos账户 | 无 |
+|-w | nacos密码 | 无 |
+
+```bash
+# nacos导入命令,把config.txt与nacos-config.sh传到服务器注意需要保持同级目录,然后运行下方命令
+./nacos-config.sh -h 101.42.231.100 -g SEATA_GROUP -t kicc-seata
+```
diff --git a/seata/conf/nacos/config.txt b/seata/conf/nacos/config.txt
new file mode 100644
index 0000000..b2e7b1c
--- /dev/null
+++ b/seata/conf/nacos/config.txt
@@ -0,0 +1,134 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+# 有关配置项的详细信息,请参考:https://seata.io/zh-cn/docs/user/configurations.html
+
+# 客户端与服务端传输方式
+transport.type=TCP
+transport.server=NIO
+transport.heartbeat=true
+transport.enableTmClientBatchSendRequest=false
+transport.enableRmClientBatchSendRequest=true
+transport.enableTcServerBatchSendResponse=false
+transport.rpcRmRequestTimeout=30000
+transport.rpcTmRequestTimeout=30000
+transport.rpcTcRequestTimeout=30000
+transport.threadFactory.bossThreadPrefix=NettyBoss
+transport.threadFactory.workerThreadPrefix=NettyServerNIOWorker
+transport.threadFactory.serverExecutorThreadPrefix=NettyServerBizHandler
+transport.threadFactory.shareBossWorker=false
+transport.threadFactory.clientSelectorThreadPrefix=NettyClientSelector
+transport.threadFactory.clientSelectorThreadSize=1
+transport.threadFactory.clientWorkerThreadPrefix=NettyClientWorkerThread
+transport.threadFactory.bossThreadSize=1
+transport.threadFactory.workerThreadSize=default
+transport.shutdown.wait=3
+transport.serialization=seata
+transport.compressor=none
+
+# 事务路由规则配置,仅针对客户端
+# seata事务组编号,用于TC集群名,很重要,与项目配置文件的tx-service-group对应
+service.vgroupMapping.default_tx_group=default
+# 默认的群组集群list,仅注册中心为file时使用,使用nacos注册中心不需要写了:https://github.com/seata/seata/issues/3473
+service.default.grouplist=127.0.0.1:8091
+service.enableDegrade=false
+service.disableGlobalTransaction=false
+
+# 事务规则配置,仅针对客户端
+client.rm.asyncCommitBufferLimit=10000
+client.rm.lock.retryInterval=10
+client.rm.lock.retryTimes=30
+client.rm.lock.retryPolicyBranchRollbackOnConflict=true
+client.rm.reportRetryCount=5
+client.rm.tableMetaCheckEnable=false
+client.rm.tableMetaCheckerInterval=60000
+client.rm.sqlParserType=druid
+client.rm.reportSuccessEnable=false
+client.rm.sagaBranchRegisterEnable=false
+client.rm.sagaJsonParser=fastjson
+client.rm.tccActionInterceptorOrder=-2147482648
+client.tm.commitRetryCount=5
+client.tm.rollbackRetryCount=5
+client.tm.defaultGlobalTransactionTimeout=60000
+client.tm.degradeCheck=false
+client.tm.degradeCheckAllowTimes=10
+client.tm.degradeCheckPeriod=2000
+client.tm.interceptorOrder=-2147482648
+client.undo.dataValidation=true
+client.undo.logSerialization=jackson
+client.undo.onlyCareUpdateColumns=true
+server.undo.logSaveDays=7
+server.undo.logDeletePeriod=86400000
+client.undo.logTable=undo_log
+client.undo.compress.enable=true
+client.undo.compress.type=zip
+client.undo.compress.threshold=64k
+# 针对于TCC交易模式
+tcc.fence.logTableName=tcc_fence_log
+tcc.fence.cleanPeriod=1h
+
+# 日志规则配置,用于客户端和服务器
+log.exceptionRate=100
+
+# 事务存储配置,file,db,redis为可选配置,推荐db模式
+store.mode=db
+store.lock.mode=file
+store.session.mode=file
+# 用于密码加密
+# store.publicKey=
+
+# 如果store.mode,store.lock.mode,store.session.mode不等于file可以移除配置块
+store.file.dir=file_store/data
+store.file.maxBranchSessionSize=16384
+store.file.maxGlobalSessionSize=512
+store.file.fileWriteBufferCacheSize=16384
+store.file.flushDiskMode=async
+store.file.sessionReloadReadSize=100
+
+# 如果store.mode为db则需要这些配置,如果store.mode,store.lock.mode,store.session.mode不等于db可以移除配置块
+store.db.datasource=druid
+# 如果为DB模式需要配置数据库,数据库默认数据库为mysql
+store.db.dbType=mysql
+store.db.driverClassName=com.mysql.jdbc.Driver
+store.db.url=jdbc:mysql://120.26.168.56:8052/kicc_seata?useUnicode=true&rewriteBatchedStatements=true
+store.db.user=root
+store.db.password=kanglai@2022
+store.db.minConn=5
+store.db.maxConn=30
+store.db.globalTable=global_table
+store.db.branchTable=branch_table
+store.db.distributedLockTable=distributed_lock
+store.db.queryLimit=100
+store.db.lockTable=lock_table
+store.db.maxWait=5000
+
+# 如果store.mode为redis则需要这些配置,如果store.mode,store.lock.mode,store.session.mode不等于redis可以移除配置块
+store.redis.mode=single
+store.redis.single.host=127.0.0.1
+store.redis.single.port=6379
+# store.redis.sentinel.masterName=
+# store.redis.sentinel.sentinelHosts=
+store.redis.maxConn=10
+store.redis.minConn=1
+store.redis.maxTotal=100
+store.redis.database=0
+# store.redis.password=
+store.redis.queryLimit=100
+
+# 交易规则配置,只针对服务端
+server.recovery.committingRetryPeriod=1000
+server.recovery.asynCommittingRetryPeriod=1000
+server.recovery.rollbackingRetryPeriod=1000
+server.recovery.timeoutRetryPeriod=1000
+server.maxCommitRetryTimeout=-1
+server.maxRollbackRetryTimeout=-1
+server.rollbackRetryTimeoutUnlockEnable=false
+server.distributedLockExpireTime=10000
+server.session.branchAsyncQueueSize=5000
+server.session.enableBranchAsyncRemove=true
+
+# 关闭metrics统计信息功能,提高性能:https://developer.aliyun.com/article/710333
+metrics.enabled=false
+metrics.registryType=compact
+metrics.exporterList=prometheus
+metrics.exporterPrometheusPort=9898
diff --git a/seata/conf/nacos/nacos-config.sh b/seata/conf/nacos/nacos-config.sh
new file mode 100644
index 0000000..e1704e0
--- /dev/null
+++ b/seata/conf/nacos/nacos-config.sh
@@ -0,0 +1,120 @@
+#!/bin/sh
+# Copyright 1999-2019 Seata.io Group.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at、
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+while getopts ":h:p:g:t:u:w:" opt
+do
+ case $opt in
+ h)
+ host=$OPTARG
+ ;;
+ p)
+ port=$OPTARG
+ ;;
+ g)
+ group=$OPTARG
+ ;;
+ t)
+ tenant=$OPTARG
+ ;;
+ u)
+ username=$OPTARG
+ ;;
+ w)
+ password=$OPTARG
+ ;;
+ ?)
+ echo " USAGE OPTION: $0 [-h host] [-p port] [-g group] [-t tenant] [-u username] [-w password] "
+ exit 1
+ ;;
+ esac
+done
+
+if [ -z ${host} ]; then
+ host=localhost
+fi
+if [ -z ${port} ]; then
+ port=8848
+fi
+if [ -z ${group} ]; then
+ group="SEATA_GROUP"
+fi
+if [ -z ${tenant} ]; then
+ tenant=""
+fi
+if [ -z ${username} ]; then
+ username=""
+fi
+if [ -z ${password} ]; then
+ password=""
+fi
+
+nacosAddr=$host:$port
+contentType="content-type:application/json;charset=UTF-8"
+
+echo "set nacosAddr=$nacosAddr"
+echo "set group=$group"
+
+urlencode() {
+ length="${#1}"
+ i=0
+ while [ $length -gt $i ]; do
+ char="${1:$i:1}"
+ case $char in
+ [a-zA-Z0-9.~_-]) printf $char ;;
+ *) printf '%%%02X' "'$char" ;;
+ esac
+ i=`expr $i + 1`
+ done
+}
+
+failCount=0
+tempLog=$(mktemp -u)
+function addConfig() {
+ dataId=`urlencode $1`
+ content=`urlencode $2`
+ curl -X POST -H "${contentType}" "http://$nacosAddr/nacos/v1/cs/configs?dataId=$dataId&group=$group&content=$content&tenant=$tenant&username=$username&password=$password" >"${tempLog}" 2>/dev/null
+ if [ -z $(cat "${tempLog}") ]; then
+ echo " Please check the cluster status. "
+ exit 1
+ fi
+ if [ "$(cat "${tempLog}")" == "true" ]; then
+ echo "Set $1=$2 successfully "
+ else
+ echo "Set $1=$2 failure "
+ failCount=`expr $failCount + 1`
+ fi
+}
+
+count=0
+COMMENT_START="#"
+for line in $(cat $(dirname "$PWD")/config.txt | sed s/[[:space:]]//g); do
+ if [[ "$line" =~ ^"${COMMENT_START}".* ]]; then
+ continue
+ fi
+ count=`expr $count + 1`
+ key=${line%%=*}
+ value=${line#*=}
+ addConfig "${key}" "${value}"
+done
+
+echo "========================================================================="
+echo " Complete initialization parameters, total-count:$count , failure-count:$failCount "
+echo "========================================================================="
+
+if [ ${failCount} -eq 0 ]; then
+ echo " Init nacos config finished, please start seata-server. "
+else
+ echo " init nacos config fail. "
+fi
diff --git a/seata/conf/nacos/seataServer.properties b/seata/conf/nacos/seataServer.properties
new file mode 100644
index 0000000..2b9c279
--- /dev/null
+++ b/seata/conf/nacos/seataServer.properties
@@ -0,0 +1,134 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+# 有关配置项的详细信息,请参考:https://seata.io/zh-cn/docs/user/configurations.html
+
+# 客户端与服务端传输方式
+transport.type=TCP
+transport.server=NIO
+transport.heartbeat=true
+transport.enableTmClientBatchSendRequest=false
+transport.enableRmClientBatchSendRequest=true
+transport.enableTcServerBatchSendResponse=false
+transport.rpcRmRequestTimeout=30000
+transport.rpcTmRequestTimeout=30000
+transport.rpcTcRequestTimeout=30000
+transport.threadFactory.bossThreadPrefix=NettyBoss
+transport.threadFactory.workerThreadPrefix=NettyServerNIOWorker
+transport.threadFactory.serverExecutorThreadPrefix=NettyServerBizHandler
+transport.threadFactory.shareBossWorker=false
+transport.threadFactory.clientSelectorThreadPrefix=NettyClientSelector
+transport.threadFactory.clientSelectorThreadSize=1
+transport.threadFactory.clientWorkerThreadPrefix=NettyClientWorkerThread
+transport.threadFactory.bossThreadSize=1
+transport.threadFactory.workerThreadSize=default
+transport.shutdown.wait=3
+transport.serialization=seata
+transport.compressor=none
+
+# 事务路由规则配置,仅针对客户端
+# seata事务组编号,用于TC集群名,很重要,与项目配置文件的tx-service-group对应
+service.vgroupMapping.default_tx_group=default
+# 默认的群组集群list,仅注册中心为file时使用,使用nacos注册中心不需要写了:https://github.com/seata/seata/issues/3473
+service.default.grouplist=127.0.0.1:8091
+service.enableDegrade=false
+service.disableGlobalTransaction=false
+
+# 事务规则配置,仅针对客户端
+client.rm.asyncCommitBufferLimit=10000
+client.rm.lock.retryInterval=10
+client.rm.lock.retryTimes=30
+client.rm.lock.retryPolicyBranchRollbackOnConflict=true
+client.rm.reportRetryCount=5
+client.rm.tableMetaCheckEnable=false
+client.rm.tableMetaCheckerInterval=60000
+client.rm.sqlParserType=druid
+client.rm.reportSuccessEnable=false
+client.rm.sagaBranchRegisterEnable=false
+client.rm.sagaJsonParser=fastjson
+client.rm.tccActionInterceptorOrder=-2147482648
+client.tm.commitRetryCount=5
+client.tm.rollbackRetryCount=5
+client.tm.defaultGlobalTransactionTimeout=60000
+client.tm.degradeCheck=false
+client.tm.degradeCheckAllowTimes=10
+client.tm.degradeCheckPeriod=2000
+client.tm.interceptorOrder=-2147482648
+client.undo.dataValidation=true
+client.undo.logSerialization=jackson
+client.undo.onlyCareUpdateColumns=true
+server.undo.logSaveDays=7
+server.undo.logDeletePeriod=86400000
+client.undo.logTable=undo_log
+client.undo.compress.enable=true
+client.undo.compress.type=zip
+client.undo.compress.threshold=64k
+# 针对于TCC交易模式
+tcc.fence.logTableName=tcc_fence_log
+tcc.fence.cleanPeriod=1h
+
+# 日志规则配置,用于客户端和服务器
+log.exceptionRate=100
+
+# 事务存储配置,file,db,redis为可选配置,推荐db模式
+store.mode=db
+store.lock.mode=file
+store.session.mode=file
+# 用于密码加密
+# store.publicKey=
+
+# 如果store.mode,store.lock.mode,store.session.mode不等于file可以移除配置块
+store.file.dir=file_store/data
+store.file.maxBranchSessionSize=16384
+store.file.maxGlobalSessionSize=512
+store.file.fileWriteBufferCacheSize=16384
+store.file.flushDiskMode=async
+store.file.sessionReloadReadSize=100
+
+# 如果store.mode为db则需要这些配置,如果store.mode,store.lock.mode,store.session.mode不等于db可以移除配置块
+store.db.datasource=druid
+# 如果为DB模式需要配置数据库,数据库默认数据库为mysql
+store.db.dbType=mysql
+store.db.driverClassName=com.mysql.jdbc.Driver
+store.db.url=jdbc:mysql://192.168.3.10:8052/kicc_seata?useUnicode=true&rewriteBatchedStatements=true
+store.db.user=root
+store.db.password=kanglai@2022
+store.db.minConn=5
+store.db.maxConn=30
+store.db.globalTable=global_table
+store.db.branchTable=branch_table
+store.db.distributedLockTable=distributed_lock
+store.db.queryLimit=100
+store.db.lockTable=lock_table
+store.db.maxWait=5000
+
+# 如果store.mode为redis则需要这些配置,如果store.mode,store.lock.mode,store.session.mode不等于redis可以移除配置块
+store.redis.mode=single
+store.redis.single.host=127.0.0.1
+store.redis.single.port=6379
+# store.redis.sentinel.masterName=
+# store.redis.sentinel.sentinelHosts=
+store.redis.maxConn=10
+store.redis.minConn=1
+store.redis.maxTotal=100
+store.redis.database=0
+# store.redis.password=
+store.redis.queryLimit=100
+
+# 交易规则配置,只针对服务端
+server.recovery.committingRetryPeriod=1000
+server.recovery.asynCommittingRetryPeriod=1000
+server.recovery.rollbackingRetryPeriod=1000
+server.recovery.timeoutRetryPeriod=1000
+server.maxCommitRetryTimeout=-1
+server.maxRollbackRetryTimeout=-1
+server.rollbackRetryTimeoutUnlockEnable=false
+server.distributedLockExpireTime=10000
+server.session.branchAsyncQueueSize=5000
+server.session.enableBranchAsyncRemove=true
+
+# 关闭metrics统计信息功能,提高性能:https://developer.aliyun.com/article/710333
+metrics.enabled=false
+metrics.registryType=compact
+metrics.exporterList=prometheus
+metrics.exporterPrometheusPort=9898
diff --git a/seata/conf/registry.conf b/seata/conf/registry.conf
new file mode 100644
index 0000000..749416c
--- /dev/null
+++ b/seata/conf/registry.conf
@@ -0,0 +1,103 @@
+registry {
+ # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa
+ type = "nacos"
+ loadBalance = "RandomLoadBalance"
+ loadBalanceVirtualNodes = 10
+
+ nacos {
+ application = "seata-server"
+ serverAddr = "192.168.3.10:8848"
+ group = "SEATA_GROUP"
+ namespace = "kicc-seata"
+ cluster = "default"
+ # nacos内网使用没配安全权限,可以不写
+ username = ""
+ password = ""
+ }
+ eureka {
+ serviceUrl = "http://localhost:8761/eureka"
+ application = "default"
+ weight = "1"
+ }
+ redis {
+ serverAddr = "localhost:6379"
+ db = 0
+ password = ""
+ cluster = "default"
+ timeout = 0
+ }
+ zk {
+ cluster = "default"
+ serverAddr = "127.0.0.1:2181"
+ sessionTimeout = 6000
+ connectTimeout = 2000
+ username = ""
+ password = ""
+ }
+ consul {
+ cluster = "default"
+ serverAddr = "127.0.0.1:8500"
+ aclToken = ""
+ }
+ etcd3 {
+ cluster = "default"
+ serverAddr = "http://localhost:2379"
+ }
+ sofa {
+ serverAddr = "127.0.0.1:9603"
+ application = "default"
+ region = "DEFAULT_ZONE"
+ datacenter = "DefaultDataCenter"
+ cluster = "default"
+ group = "SEATA_GROUP"
+ addressWaitTime = "3000"
+ }
+ file {
+ name = "file.conf"
+ }
+}
+
+config {
+ # file、nacos 、apollo、zk、consul、etcd3
+ type = "nacos"
+
+ nacos {
+ serverAddr = "192.168.3.10:8848"
+ namespace = "kicc-seata"
+ group = "SEATA_GROUP"
+ # nacos内网使用没配安全权限,可以不写
+ username = ""
+ password = ""
+ # 目前nacos文件是拆成多个的,也可以整合成一个,将所有配置配置到这个nacos中的properties
+ # 但是通过查看客户端源码发现内部不支持dataId这种方式,所以这个配置只对服务端起作用
+ # 所以不能达到统一的一个效果,没什么用,可以注释调,采用nacos多个文件的形式
+ # dataId = "seataServer.properties"
+ }
+ consul {
+ serverAddr = "127.0.0.1:8500"
+ aclToken = ""
+ }
+ apollo {
+ appId = "seata-server"
+ ## apolloConfigService will cover apolloMeta
+ apolloMeta = "http://192.168.1.204:8801"
+ apolloConfigService = "http://192.168.1.204:8080"
+ namespace = "application"
+ apolloAccesskeySecret = ""
+ cluster = "seata"
+ }
+ zk {
+ serverAddr = "127.0.0.1:2181"
+ sessionTimeout = 6000
+ connectTimeout = 2000
+ username = ""
+ password = ""
+ nodePath = "/seata/seata.properties"
+ }
+ etcd3 {
+ serverAddr = "http://localhost:2379"
+ }
+ file {
+ name = "file.conf"
+ }
+}
diff --git a/seata/docker-compose.yml b/seata/docker-compose.yml
new file mode 100644
index 0000000..c762281
--- /dev/null
+++ b/seata/docker-compose.yml
@@ -0,0 +1,35 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+# https://support.websoft9.com/docs/docker/zh/solution-compose.html#command
+version: "3"
+services:
+
+ # seata分布式事务服务器
+ seata-server:
+ image: seataio/seata-server:1.4.2
+ container_name: seata-server
+ hostname: seata-server
+ restart: always
+ networks:
+ - seata-server
+ ports:
+ - 8091:8091
+ environment:
+ # https://seata.io/zh-cn/docs/ops/deploy-by-docker.html
+ # 注册到nacos上的ip。客户端将通过该ip访问seata服务。
+ # 注意公网ip和内网ip的差异。
+ - SEATA_IP=192.168.3.10
+ # 指定seata服务启动端口
+ - SEATA_PORT=8091
+ # 存储模式
+ - STORE_MODE=db
+ volumes:
+ - /usr/software/dockerDatabase/seata/config/registry.conf:/seata-server/resources/registry.conf
+ - /usr/software/dockerDatabase/seata/logs:/root/logs/seata
+
+# 局域网网关配置
+networks:
+ seata-server:
+ driver: bridge
diff --git a/upsource/README.md b/upsource/README.md
new file mode 100644
index 0000000..6ed7f77
--- /dev/null
+++ b/upsource/README.md
@@ -0,0 +1,8 @@
+
+```bash
+# upsource容器中使用的用户和组不是13001:13001,而是其他,也许是码头工人的用户,需要手动授权,或者写个Dockerfile在里面授权
+chmod -R 777 /usr/software/dockerDatabase/upsource/data
+chmod -R 777 /usr/software/dockerDatabase/upsource/conf
+chmod -R 777 /usr/software/dockerDatabase/upsource/logs
+chmod -R 777 /usr/software/dockerDatabase/upsource/backups
+```
diff --git a/upsource/docker-compose.yml b/upsource/docker-compose.yml
new file mode 100644
index 0000000..adc6b5a
--- /dev/null
+++ b/upsource/docker-compose.yml
@@ -0,0 +1,21 @@
+# PROJECT: 康来生物有限公司kicc(智慧冷链)分布式架构平台
+# VERSION: 1.0.0
+# Author: 康来生物科技有限公司-王翔
+
+# 更多信息请参考官网:https://docs.gitea.io/en-us/install-with-docker/
+version: '3'
+services:
+ #idea代码审查工具
+ #docker安装帮助: https://www.jetbrains.com/help/upsource/docker-installation.html#configure
+ upsource-server:
+ image: jetbrains/upsource:2020.1.1992
+ container_name: upsource
+ hostname: upsource
+ restart: always
+ volumes:
+ - /usr/software/dockerDatabase/upsource/data:/opt/upsource/data
+ - /usr/software/dockerDatabase/upsource/conf:/opt/upsource/conf
+ - /usr/software/dockerDatabase/upsource/logs:/opt/upsource/logs
+ - /usr/software/dockerDatabase/upsource/backups:/opt/upsource/backups
+ ports:
+ - 9301:8080
diff --git a/zookeeper/docker-compose.yml b/zookeeper/docker-compose.yml
new file mode 100644
index 0000000..fbd5723
--- /dev/null
+++ b/zookeeper/docker-compose.yml
@@ -0,0 +1,19 @@
+# PROJECT: dolphin
+# VERSION: 1.0.0
+# Author: wangxiang4
+# https://hub.docker.com/_/zookeeper
+version: "3"
+services:
+ zookeeper:
+ image: zookeeper:3.4.14
+ container_name: zookeeper
+ hostname: zookeeper
+ restart: always
+ environment:
+ - ZOO_MAX_CLIENT_CNXNS=200
+ volumes:
+ - /usr/software/dockerDatabase/zookeeper/data:/data
+ - /usr/software/dockerDatabase/zookeeper/config:/conf
+ - /usr/software/dockerDatabase/zookeeper/logs:/datalog
+ ports:
+ - 2181:2181