Spring Boot Embedded Tomcat无法在docker中刷新的上下文上启动

时间:2019-08-09 07:46:29

标签: java spring spring-boot docker tomcat

我有一个在本地环境中运行良好的应用程序。用它构建docker映像-仍然可以正常运行。

然后,我将此应用程序和此docker映像部署到ubuntu服务器(如果有所帮助,则为EC2)。具有相同应用程序的相同容器无法在其中启动。

Logs-on-pastebin-debug

从我看到的情况来看,tomcat第一次在8080开始运行良好,并且在刷新上下文后,它无法以异常“正在使用地址”启动

应用程序没有自定义@Configuration类。为什么会发生这种情况,我该如何解决?

Dockerfile:

FROM adoptopenjdk/openjdk12
EXPOSE 8080
ADD build/libs/hydroapi*.jar /app/hydroapi.jar
CMD java -jar /app/hydroapi.jar

等级:

plugins {
    id 'org.springframework.boot' version '2.1.3.RELEASE'
    id 'java'
}

apply plugin: 'io.spring.dependency-management'
sourceCompatibility = '11'

configurations {
    developmentOnly
    runtimeClasspath {
        extendsFrom developmentOnly
    }
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-data-rest'
    implementation 'org.springframework.boot:spring-boot-starter-security'

    implementation group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2'
    implementation group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2'
    implementation group: 'io.springfox', name: 'springfox-data-rest', version: '2.9.2'

    compile group: 'com.google.guava', name: 'guava', version: '23.0'
    compileOnly 'org.projectlombok:lombok'
    developmentOnly 'org.springframework.boot:spring-boot-devtools'
    runtimeOnly 'org.postgresql:postgresql'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'io.projectreactor:reactor-test'
    testImplementation 'org.springframework.security:spring-security-test'
}

bootJar {
    baseName = 'hydroapi'
    version =  '0.1.0'
}

主应用程序:

@SpringBootApplication
public class HydroapiApplication {
    public static void main(String[] args) {
        SpringApplication.run(HydroapiApplication.class, args);
    }
}

我尝试运行将胖子放在服务器上的应用程序

docker-compose up --build

0 个答案:

没有答案