我有一个很奇怪的问题。我正在尝试通过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 .
因此图像是正确构建的。
3)现在,我正在运行该图像以生成容器。所以
docker run -d -p 8080:8080 spring-boot-docker
您可以看到生成了一个容器。但是当我键入
$ docker ps
container_id不可见,当我在浏览器中键入 localhost:8080 时,该应用程序根本没有运行。为什么会这样呢?有任何想法吗?如何解决?
答案 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"]