提交 4ef09ffc 作者: 方治民

feat: 更新技术栈文档、项目配置、将 MySQL 更换成 Postgres

上级 08ca1400
......@@ -55,4 +55,4 @@ deploy-job:
REGISTRY_REMOTE_USER: $REGISTRY_REMOTE_USER
REGISTRY_REMOTE_PASSWORD: $REGISTRY_REMOTE_PASSWORD
# 设置镜像 tag,使用 git tag 标识作为镜像 tag
TAG: ${REGISTRY_REMOTE}/basic/basic-api:${CI_BUILD_REF_NAME}
TAG: ${REGISTRY_REMOTE}/kshg/kshg-api:${CI_BUILD_REF_NAME}
......@@ -10,7 +10,7 @@ VOLUME /data
VOLUME /logs
# 复制上下文目录下的 build/libs/app.jar 到容器里
COPY build/libs/app-0.0.1-SNAPSHOT.jar app.jar
COPY app/build/libs/app-0.0.1-SNAPSHOT.jar app.jar
# bash方式执行,使 app.jar 可访问
# RUN新建立一层,在其上执行这些命令,执行结束后, commit 这一层的修改,构成新的镜像。
......
# Basic API(Template)
# 可赛化工安全生产平台 API
> 项目 Fork 自 [basic-api-project](https://gitlab.yiring.com/basic/basic-api-project)
## 开发环境
......
......@@ -11,8 +11,8 @@ dependencies {
// 💬 Mock/Test Env
runtimeOnly 'com.h2database:h2'
// 💬 Prod/Dev Env
runtimeOnly 'mysql:mysql-connector-java'
// runtimeOnly 'org.postgresql:postgresql'
// runtimeOnly 'mysql:mysql-connector-java'
runtimeOnly 'org.postgresql:postgresql'
implementation project(":basic-common:core")
implementation project(":basic-common:util")
......
# 环境变量
env:
host: 192.168.0.156
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/basic_app?useSSL=false&allowPublicKeyRetrieval=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
url: jdbc:postgresql://${env.host}:5432/kshg_app
username: postgres
password: 123456
jpa:
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
database-platform: org.hibernate.dialect.PostgreSQLDialect
open-in-view: true
hibernate:
ddl-auto: update
......@@ -14,7 +18,7 @@ spring:
format_sql: true
redis:
database: 5
host: 127.0.0.1
host: ${env.host}
password: 123456
# knife4j
......@@ -32,8 +36,8 @@ knife4j:
minio:
access-key: minioadmin
secret-key: minioadmin
end-point: "http://127.0.0.1:18100"
bucket: basic
end-point: "http://${env.host}:18100"
bucket: kshg
domain: ${minio.endpoint}/${minio.bucket}
logging:
......
# 环境变量
env:
host: 127.0.0.1
spring:
datasource:
url: jdbc:h2:file:~/h2_basic;DB_CLOSE_ON_EXIT=FALSE
url: jdbc:h2:file:~/h2_kshg;DB_CLOSE_ON_EXIT=FALSE
username: sa
password: 123456
jpa:
database-platform: org.hibernate.dialect.H2Dialect
show-sql: true
open-in-view: true
hibernate:
ddl-auto: update
show-sql: true
properties:
hibernate:
format_sql: true
h2:
console:
enabled: true
redis:
database: 5
host: 127.0.0.1
host: ${env.host}
password: 123456
# knife4j
......@@ -32,8 +39,8 @@ knife4j:
minio:
access-key: minioadmin
secret-key: minioadmin
end-point: "http://127.0.0.1:18100"
bucket: basic
end-point: "http://${env.host}:18100"
bucket: kshg
domain: ${minio.endpoint}/${minio.bucket}
logging:
......
......@@ -5,7 +5,7 @@ server:
spring:
application:
name: "basic-api-app"
name: "kshg-api"
profiles:
include: auth
active: dev
......
/* (C) 2022 YiRing, Inc. */
package com.yiring.common.config;
import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
/**
* Env 环境变量配置注入
*
* @author Jim
* @version 0.1
* 2021/9/16 16:37
*/
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
@Configuration
@ConfigurationProperties(prefix = "env")
public class EnvConfig {
/**
* host,用来共享一些资源(如:数据库、文件存储等相关的依赖源)
*/
String host;
}
......@@ -8,6 +8,36 @@
- [Spring Web](https://docs.spring.io/spring-framework/docs/current/reference/html/web.html)
- [Spring Data Jpa](https://spring.io/projects/spring-data-jpa)
### SQL
<!-- prettier-ignore -->
- [Postgresql + TimescaleDB + PostGIS](https://hub.docker.com/r/timescale/timescaledb-postgis) 时序 + 空间数据
### MQ
<!-- prettier-ignore -->
- [RabbitMQ](https://www.rabbitmq.com/) 消息队列
### Cache
<!-- prettier-ignore -->
- [Redis](https://redis.io/) 缓存
### Storage
<!-- prettier-ignore -->
- [MinIO](https://min.io/) 文件存储
### Job
<!-- prettier-ignore -->
- [XXL-JOB](https://www.xuxueli.com/xxl-job/) 任务调度
### Video Media
<!-- prettier-ignore -->
- [WVP-GB28181-PRO](https://github.com/648540858/wvp-GB28181-pro) 流媒体平台,用来统一处理监控摄像头视频流
### Tools
<!-- prettier-ignore -->
......
......@@ -2,14 +2,14 @@ version: '3'
services:
# 应用服务
basic-api:
kshg-api:
build:
context: .
dockerfile: Dockerfile
# 镜像名称
image: 127.0.0.1:18500/basic/basic-api:0.0.1
image: 127.0.0.1:18500/kshg/kshg-api:0.0.1
# 容器名称
container_name: 'basic-api'
container_name: 'kshg-api'
# 端口绑定
ports:
- "18181:8181"
......@@ -17,14 +17,14 @@ services:
restart: always
# 挂载目录
volumes:
- "/volume/basic/app/data:/data"
- "/volume/basic/app/logs:/logs"
- "/volume/kshg/app/data:/data"
- "/volume/kshg/app/logs:/logs"
environment:
# 设置时区
- TZ=Asia/Shanghai
# 指定网络
networks:
- basic
- kshg
networks:
basic:
kshg:
......@@ -4,7 +4,7 @@ pluginManagement {
gradlePluginPortal()
}
}
rootProject.name = 'basic'
rootProject.name = 'kshg-api'
include 'app'
include 'basic-auth'
include 'basic-common:core'
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论