当前位置: 首页 > 知识库问答 >
问题:

从Docker运行Spring Boot应用程序不工作

鱼旺
2023-03-14

我有一个很奇怪的问题。我正在尝试通过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文件。

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

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

您可以看到生成了一个容器。但当我打字的时候

$ docker ps

container_id不可见,当我在浏览器中键入localhost:8080时,应用程序根本没有运行。为什么会出现这种情况?有什么想法吗?怎么修?

共有1个答案

蒋茂
2023-03-14

如果发布的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"]
 类似资料:
  • 我试图在SpringMVC中运行SpringBoot应用程序,在SpringMVCPOM中添加SpringBoot应用程序依赖项,并扫描SpringBoot包,但我面临以下问题

  • 例如。 这应该运行一个简单的hello world应用程序,摘自oracle文档。然而,当我‘运行’这个代码,没有窗口打开。取而代之的是打开一个名为“Java”的应用程序。看起来'java'只是一个位于'jdk1.8.0_25.jdk/contents/home/bin'中的'UNIX可执行文件‘。应用程序'java'绝对不显示任何东西,并且在没有强制退出的情况下无法关闭。 我在MacBook上运

  • 然后我的豆荚都可以通过这个网关的虚拟服务到达,它工作得很好,因为它们上面有Istio-Car集装箱,然后我可以从外面到达它们。 因此,我在开发环境中配置了这个应用程序,以便从ENV值中获取凭据: 我知道这不安全,但我只想确定它是认证的。就像我从圆木里看到的那样,它是。 当我的代码操作存储时,需要一个这种类型的对象,我通过这样做得到一个对象: 看起来,当我从Pod进行调用时,预计会有一些额外的Htt

  • 版本 openjdk版本“11.0.11”2021-04-20 如果可能的话,请不要告诉我像我以前看到其他人回答的那样“阅读基础知识”。我只是不确定为什么我的代码不能在我的最后一个项目中运行。 提前谢谢你!

  • 我正试图将运行在tomcat上的现有应用程序更改为SpringBoot。它一直运行到真正的SpringBoot启动。我有一个类似的应用程序运行在SpringBoot上。这就是我知道它一直运行到Springboot的原因。 我的主要方法: 我尝试使用@componentscan运行main方法,该方法具有如下所示的basePackages: 这无济于事。我尝试在main类的顶部添加@SpringBo