feat(admin): Add admin authentication and user management

This commit is contained in:
2025-04-13 20:34:47 +08:00
parent 36380d50a7
commit 7520d56e0a
27 changed files with 922 additions and 28 deletions
+13
View File
@@ -0,0 +1,13 @@
FROM eclipse-temurin:17-jre
# 安装FFmpeg
RUN apt-get update && \
apt-get install -y ffmpeg && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY target/video-content-*.jar app.jar
ENTRYPOINT ["java", "-jar", "app.jar"]
@@ -0,0 +1,87 @@
server:
port: 9003
spring:
application:
name: video-content
cloud:
nacos:
discovery:
server-addr: ${NACOS_HOST:nacos}:${NACOS_PORT:8848}
namespace: public
group: DEFAULT_GROUP
sentinel:
transport:
dashboard: ${SENTINEL_HOST:sentinel}:${SENTINEL_PORT:8080}
port: 8723
eager: true
datasource:
url: jdbc:mysql://${MYSQL_HOST:mysql}:${MYSQL_PORT:3306}/video_content?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
data:
redis:
host: ${REDIS_HOST:redis}
port: ${REDIS_PORT:6379}
password: redis_EsJ8FX
database: 2
timeout: 10000
lettuce:
pool:
max-active: 200
max-wait: -1
max-idle: 10
min-idle: 0
# 文件上传配置
servlet:
multipart:
max-file-size: 1024MB
max-request-size: 1024MB
enabled: true
# RocketMQ配置
rocketmq:
topic-prefix: video-platform-
name-server: ${ROCKETMQ_HOST:rmqnamesrv}:${ROCKETMQ_PORT:9876}
producer:
group: video-content-producer
send-message-timeout: 3000
retry-times-when-send-failed: 3
retry-times-when-send-async-failed: 3
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.nuaa.video.content.entity
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
global-config:
db-config:
id-type: auto
logic-delete-field: is_deleted
logic-delete-value: 1
logic-not-delete-value: 0
# MinIO配置
minio:
endpoint: http://${MINIO_HOST:minio}:${MINIO_PORT:9000}
accessKey: ${MINIO_ACCESS_KEY:minioadmin}
secretKey: ${MINIO_SECRET_KEY:minioadmin}
bucketName: ${MINIO_BUCKET:video-platform}
# FFmpeg配置
ffmpeg:
binary:
path: ${FFMPEG_PATH:/usr/bin/ffmpeg}
probe:
path: ${FFPROBE_PATH:/usr/bin/ffprobe}
temp:
path: ${FFMPEG_TEMP_PATH:/tmp/ffmpeg}
auth:
ignore-urls:
- /api/v1/videos/public/**
- /api/v1/categories/**