main
parent
254db5108a
commit
ec1a890891
@ -1,10 +1,10 @@
|
||||
FROM openjdk:17-jdk-alpine
|
||||
MAINTAINER [AutoFlow]
|
||||
|
||||
RUN apk --no-cache add tzdata && cp /usr/share/zoneinfo/Asia/Seoul /etc/localtime
|
||||
|
||||
RUN mkdir /server
|
||||
ADD build/libs/autoflow-0.0.1-SNAPSHOT.jar /server/autoflow-0.0.1-SNAPSHOT.jar
|
||||
|
||||
WORKDIR /server
|
||||
ENTRYPOINT ["java", "-jar", "autoflow-0.0.1-SNAPSHOT.jar"]
|
||||
FROM openjdk:17-jdk-alpine
|
||||
MAINTAINER [AutoFlow]
|
||||
|
||||
RUN apk --no-cache add tzdata && cp /usr/share/zoneinfo/Asia/Seoul /etc/localtime
|
||||
|
||||
RUN mkdir /server
|
||||
COPY build/libs/*.jar /server/app.jar
|
||||
|
||||
WORKDIR /server
|
||||
ENTRYPOINT ["java", "-jar", "app.jar"]
|
||||
@ -0,0 +1,47 @@
|
||||
package kr.re.etri.autoflow.controller;
|
||||
|
||||
import kr.re.etri.autoflow.service.storage.StorageProvider;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/test/storage")
|
||||
@RequiredArgsConstructor
|
||||
public class StorageTestController {
|
||||
|
||||
private final StorageProvider storageProvider;
|
||||
|
||||
@GetMapping("/info")
|
||||
public ResponseEntity<Map<String, Object>> getInfo() {
|
||||
Map<String, Object> info = new HashMap<>();
|
||||
info.put("providerClass", storageProvider.getClass().getSimpleName());
|
||||
return ResponseEntity.ok(info);
|
||||
}
|
||||
|
||||
@PostMapping("/upload")
|
||||
public ResponseEntity<String> testUpload(@RequestParam("file") MultipartFile file) {
|
||||
try (InputStream is = file.getInputStream()) {
|
||||
String objectName = "test/" + file.getOriginalFilename();
|
||||
storageProvider.uploadFileToDefault(objectName, is, file.getContentType(), file.getSize());
|
||||
return ResponseEntity.ok("Upload successful: " + objectName);
|
||||
} catch (Exception e) {
|
||||
return ResponseEntity.internalServerError().body("Upload failed: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/url")
|
||||
public ResponseEntity<String> getUrl(@RequestParam("name") String name) {
|
||||
try {
|
||||
String url = storageProvider.getFileUrl(null, name, null);
|
||||
return ResponseEntity.ok(url);
|
||||
} catch (Exception e) {
|
||||
return ResponseEntity.internalServerError().body("Failed to get URL: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,88 +1,93 @@
|
||||
#????? ?? ??
|
||||
server.port = 8080
|
||||
|
||||
spring.profiles.active=local
|
||||
|
||||
spring.datasource.url=jdbc:mariadb://192.168.10.143:3306/autoflow
|
||||
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
|
||||
spring.datasource.username=cuuva
|
||||
spring.datasource.password=cuuva
|
||||
|
||||
spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
|
||||
|
||||
spring.jpa.defer-datasource-initialization=true
|
||||
|
||||
#spring.batch.jdbc.schema=classpath:org/springframework/batch/core/schema-mariadb.sql
|
||||
#spring.batch.jdbc.initialize-schema=always
|
||||
|
||||
# App Properties
|
||||
cuuva.app.jwtCookieName=cuuva-jwt
|
||||
cuuva.app.jwtRefreshCookieName=cuuva-jwt-refresh
|
||||
cuuva.app.jwtSecret= 275511b31c520562d69802ce4a913773102563891563a24062f44b3f312ca2bd034440e81836d1b4ccf4195f43db4c81a4e489a41f1ae0967afe468c9a361f4d
|
||||
|
||||
## For test
|
||||
cuuva.app.jwtExpirationMs= 900000
|
||||
cuuva.app.jwtRefreshExpirationMs= 8640000
|
||||
|
||||
spring.jpa.show-sql=true
|
||||
|
||||
spring.jpa.properties.hibernate.format_sql=true
|
||||
|
||||
logging.level.org.hibernate.type.descriptor.sql=TRACE
|
||||
|
||||
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
|
||||
|
||||
spring.datasource.hikari.connection-timeout=30000
|
||||
spring.datasource.hikari.idle-timeout=60000
|
||||
spring.datasource.hikari.max-lifetime=1800000
|
||||
|
||||
springdoc.api-docs.enabled=true
|
||||
springdoc.api-docs.path=/v3/api-docs
|
||||
|
||||
springdoc.swagger-ui.path=/swagger-ui
|
||||
springdoc.swagger-ui.config-url=/autoflow-server-mgmt/v3/api-docs/swagger-config
|
||||
springdoc.swagger-ui.url=/autoflow-server-mgmt/v3/api-docs
|
||||
springdoc.swagger-ui.doc-expansion=none
|
||||
springdoc.swagger-ui.disable-swagger-default-url=true
|
||||
|
||||
spring.servlet.multipart.max-file-size=500MB
|
||||
spring.servlet.multipart.max-request-size=500MB
|
||||
|
||||
springdoc.swagger-ui.tags-sorter=alpha
|
||||
|
||||
# Storage Provider (minio, s3, or filesystem)
|
||||
storage.provider=minio
|
||||
|
||||
# Local FileSystem ??
|
||||
storage.local.base-path=/app/storage
|
||||
storage.local.default-bucket=mlpipeline
|
||||
|
||||
# MinIO ??
|
||||
minio.endpoint=http://192.168.10.135:31795
|
||||
minio.access-key=minio
|
||||
minio.secret-key=minio123
|
||||
minio.bucket=mlpipeline
|
||||
|
||||
# Kubeflow
|
||||
kubeflow.url=http://192.168.10.135:32473/
|
||||
|
||||
# MLflow
|
||||
mlflow.url=http://192.168.10.135:30128/
|
||||
mlflow.user=user
|
||||
mlflow.password=WjWjIi13KEkO
|
||||
|
||||
server.servlet.encoding.charset=UTF-8
|
||||
server.servlet.encoding.enabled=true
|
||||
server.servlet.encoding.force=true
|
||||
|
||||
spring.servlet.multipart.enabled=true
|
||||
|
||||
#OTA??
|
||||
external.auth.signin-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/user/signin
|
||||
external.auth.edge-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/edge-pkg/search
|
||||
external.auth.sw-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/advehicle-pkg/search
|
||||
|
||||
cloud.aws.region.static=ap-northeast-2
|
||||
cloud.aws.credentials.access-key=AKIA2UC3EPERDDR4UOWN
|
||||
cloud.aws.credentials.secret-key=Ps7ShmtcemhhTmZi+aUCpSpfZxjqFGyy51qgDSGD
|
||||
cloud.aws.s3.bucket=mlpipeline
|
||||
#????? ?? ??
|
||||
server.port = 8080
|
||||
|
||||
spring.profiles.active=local
|
||||
|
||||
spring.datasource.url=jdbc:mariadb://192.168.10.143:3306/autoflow
|
||||
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
|
||||
spring.datasource.username=cuuva
|
||||
spring.datasource.password=cuuva
|
||||
|
||||
spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
|
||||
|
||||
spring.jpa.defer-datasource-initialization=true
|
||||
|
||||
#spring.batch.jdbc.schema=classpath:org/springframework/batch/core/schema-mariadb.sql
|
||||
#spring.batch.jdbc.initialize-schema=always
|
||||
|
||||
# App Properties
|
||||
cuuva.app.jwtCookieName=cuuva-jwt
|
||||
cuuva.app.jwtRefreshCookieName=cuuva-jwt-refresh
|
||||
cuuva.app.jwtSecret= 275511b31c520562d69802ce4a913773102563891563a24062f44b3f312ca2bd034440e81836d1b4ccf4195f43db4c81a4e489a41f1ae0967afe468c9a361f4d
|
||||
|
||||
## For test
|
||||
cuuva.app.jwtExpirationMs= 900000
|
||||
cuuva.app.jwtRefreshExpirationMs= 8640000
|
||||
|
||||
spring.jpa.show-sql=true
|
||||
|
||||
spring.jpa.properties.hibernate.format_sql=true
|
||||
|
||||
logging.level.org.hibernate.type.descriptor.sql=TRACE
|
||||
|
||||
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
|
||||
|
||||
spring.datasource.hikari.connection-timeout=30000
|
||||
spring.datasource.hikari.idle-timeout=60000
|
||||
spring.datasource.hikari.max-lifetime=1800000
|
||||
|
||||
springdoc.api-docs.enabled=true
|
||||
springdoc.api-docs.path=/v3/api-docs
|
||||
|
||||
springdoc.swagger-ui.path=/swagger-ui
|
||||
springdoc.swagger-ui.config-url=/autoflow-server-mgmt/v3/api-docs/swagger-config
|
||||
springdoc.swagger-ui.url=/autoflow-server-mgmt/v3/api-docs
|
||||
springdoc.swagger-ui.doc-expansion=none
|
||||
springdoc.swagger-ui.disable-swagger-default-url=true
|
||||
|
||||
spring.servlet.multipart.max-file-size=500MB
|
||||
spring.servlet.multipart.max-request-size=500MB
|
||||
|
||||
springdoc.swagger-ui.tags-sorter=alpha
|
||||
|
||||
# Storage Provider (minio, s3, or filesystem)
|
||||
storage.provider=minio
|
||||
|
||||
# Local FileSystem ??
|
||||
storage.local.base-path=/app/storage
|
||||
storage.local.default-bucket=mlpipeline
|
||||
|
||||
# MinIO ??
|
||||
minio.endpoint=http://192.168.10.135:31795
|
||||
minio.access-key=minio
|
||||
minio.secret-key=minio123
|
||||
minio.bucket=mlpipeline
|
||||
|
||||
# Kubeflow
|
||||
kubeflow.url=http://192.168.10.135:32473/
|
||||
|
||||
# MLflow
|
||||
mlflow.url=http://192.168.10.135:30128/
|
||||
mlflow.user=user
|
||||
mlflow.password=WjWjIi13KEkO
|
||||
|
||||
server.servlet.encoding.charset=UTF-8
|
||||
server.servlet.encoding.enabled=true
|
||||
server.servlet.encoding.force=true
|
||||
|
||||
spring.servlet.multipart.enabled=true
|
||||
|
||||
#OTA??
|
||||
external.auth.signin-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/user/signin
|
||||
external.auth.edge-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/edge-pkg/search
|
||||
external.auth.sw-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/advehicle-pkg/search
|
||||
|
||||
cloud.aws.region.static=ap-northeast-2
|
||||
cloud.aws.credentials.access-key=AKIA2UC3EPERDDR4UOWN
|
||||
cloud.aws.credentials.secret-key=Ps7ShmtcemhhTmZi+aUCpSpfZxjqFGyy51qgDSGD
|
||||
cloud.aws.s3.bucket=mlpipeline
|
||||
|
||||
# Spring Actuator Configuration
|
||||
management.endpoints.web.exposure.include=health
|
||||
management.endpoint.health.show-details=always
|
||||
management.health.defaults.enabled=true
|
||||
Loading…
Reference in new issue