【问题标题】:Containarize spring booot microservices容器化 Spring Boot 微服务
【发布时间】:2018-07-28 18:09:36
【问题描述】:

对于一个项目,我试图将我的微服务放入容器中。 现在我可以成功地将一个 jar 文件放入一个 docker 容器中并运行它。 我知道 docker 镜像和容器是如何工作的。但是我对微服务非常陌生,我的一个朋友要求将他的 spring boot 微服务放在 docker 环境中。现在这是我的计划。 将每个微服务放在 1 个容器中,使用 docker compose 管理它们,以便您可以同时运行和配置它们。以后可能会使用 docker compose scale 为它添加一些高可用性,或者使用 Docker swarm 尝试一些东西。

我现在的问题是如何将一项服务放入容器中。您是否从服务中创建了一个 jar /war 文件,并将其放入一个容器中,并在您的服务中使用您正在使用的暴露端口?

对于我的 testjar 文件(我在网上找到的一个简单的 hello world),我使用了这个 dockerfile

FROM openjdk:8
ADD /jarfiles/test.jar test.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar" , "test.jar"]

【问题讨论】:

    标签: docker spring-boot docker-compose containers microservices


    【解决方案1】:

    您需要将您的 Spring Boot 应用程序转换为 Docker 映像。启动应用程序的转换可以使用 docker maven 插件进行转换,也可以使用 docker 命令进行转换。

    使用 docker,您需要 dockerfile,其中包含创建 docker 映像的步骤。

    一旦你的镜像准备好了,你就可以在 docker 引擎上运行那个 docker 镜像,因此运行后的镜像将是一个 docker 容器。这基本上就是虚拟化。

    有一组 docker 命令用于运行/创建 docker 镜像。

    安装docker引擎并使用启动docker引擎

    服务泊坞窗启动

    然后使用所有 docker 命令

    【讨论】:

    • 我不能赞成你的答案,因为我是堆栈溢出的新手,但谢谢。你帮了我很多!
    • 如果您同意,您可以将其标记为正确的正确答案,而不是向上转换。
    • 你好,伙计,你有机会看看我的后续问题吗?
    • 你能不能再把你的问题寄给我,耽搁了见谅。
    • 我在 java 代码中找到了解决方案,而不是在 docker 环境中。感谢您的回复并会帮助我!!
    猜你喜欢
    • 2020-03-11
    • 2022-01-08
    • 2020-09-27
    • 2019-02-20
    • 2020-12-09
    • 1970-01-01
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    相关资源
    最近更新 更多