Amazon web services 在ECS上部署时出现多端口异常-Spring 1.5.15.1版本
我面临着一种非常奇怪的行为。我正在将我的jar打包到一个容器中,以便将其部署到ECS上,但是,在定义最大文件大小到100M时,我的application.yaml似乎不起作用 奇怪的是,当在本地或通过执行胖jar启动应用程序时,它工作得很好 这是我的应用程序。yamlAmazon web services 在ECS上部署时出现多端口异常-Spring 1.5.15.1版本,amazon-web-services,spring-boot,amazon-ecs,Amazon Web Services,Spring Boot,Amazon Ecs,我面临着一种非常奇怪的行为。我正在将我的jar打包到一个容器中,以便将其部署到ECS上,但是,在定义最大文件大小到100M时,我的application.yaml似乎不起作用 奇怪的是,当在本地或通过执行胖jar启动应用程序时,它工作得很好 这是我的应用程序。yaml spring: http.multipart: max-file-size: 100MB max-request-size: 100MB Dockerfile FROM openjdk:8-jre-alpin
spring:
http.multipart:
max-file-size: 100MB
max-request-size: 100MB
Dockerfile
FROM openjdk:8-jre-alpine
ARG JAR_FILE
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Dspring.profiles.active=prod","-jar","/app.jar"]
AWS上的错误
{
"timestamp": 1535489967123,
"status": 500,
"error": "Internal Server Error",
"exception": "org.springframework.web.multipart.MultipartException",
"message": "Could not parse multipart servlet request; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (43258070) exceeds the configured maximum (10485760)",
"path": "/fake/path/loader"
}
问题主要出在application.yaml没有正确打包上。 另一种方法是,您可以按以下方式为spring jar使用命令行覆盖:
java -jar your-app.jar --spring.http.multipart.max-file-size=100MB --spring.http.multipart.max-request-size=100MB
或者,您可以参考本答案中提到的外部应用程序文件加载:
您是否可以共享jar?