从Docker运行Spring Boot应用无法正常工作

时间:2018-12-31 07:18:09

标签: linux spring-boot docker

我有一个很奇怪的问题。我正在尝试通过docker运行Spring Boot应用程序。所以这是我的步骤。

1)我正在创建一个Dockerfile。

FROM centos

RUN yum install -y java

VOLUME /tmp
ADD /spring-boot-web-0.0.1-SNAPSHOT.jar myapp.jar
RUN sh -c 'touch /myapp.jar'
ENTRYPOINT [“java","-Djava.security.egd=file:/dev/./urandom","- 
jar","/myapp.jar"]

在此文件中,我正在安装Java。我还使用了名为 spring-boot-web-0.0.1-SNAPSHOT.jar

的应用程序的jar文件

2)下一步是构建图像。所以我输入

tmp theodosiostziomakas$ docker build -t spring-boot-docker .

Screenshot 1

因此图像是正确构建的。

3)现在,我正在运行该图像以生成容器。所以

docker run -d -p 8080:8080 spring-boot-docker

Screenshot 2

您可以看到生成了一个容器。但是当我键入

$ docker ps

container_id不可见,当我在浏览器中键入 localhost:8080 时,该应用程序根本没有运行。为什么会这样呢?有任何想法吗?如何解决?

1 个答案:

答案 0 :(得分:2)

如果发布的Dockerfile是您正在使用的文件,则Java前面有一个错误的引号:

FROM centos

RUN yum install -y java

VOLUME /tmp

ADD /spring-boot-web-0.0.1-SNAPSHOT.jar myapp.jar

RUN sh -c 'touch /myapp.jar'

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/myapp.jar"]