【问题标题】:How to host spring-boot micro-service dockerized(docker compose) application on Heroku如何在 Heroku 上托管 spring-boot 微服务 dockerized(docker compose) 应用程序
【发布时间】:2020-08-01 03:16:17
【问题描述】:
我已经开发了小型 spring-boot 微服务应用程序并对其进行了 docker 化。我有多个 spring-boot 服务和 angular,它们使用 docker-compose 文件进行了 docker 化。我的应用程序在我的本地运行良好。我只是想免费在 Heroku 上托管我的应用程序。请帮助我如何托管我的应用程序以及如何使用应用程序配置多个端口。如何使用 docker-compose 进行部署。
【问题讨论】:
标签:
java
spring-boot
docker
heroku
microservices
【解决方案2】:
首先,你不能在 heroku 中运行你的 docker-compose。
不需要 Docker
如果您选择heroku,则不需要docker。只需确保您的 spring boot apis 和 angular 应用程序是标准的。如果你实现了这一点,只需创建许多应用程序作为你拥有的 git 存储库(我猜你有这样的)。
智能 heroku 引擎将检测您的 git 存储库的技术,并为您的应用提供标准测功机。之后,heroku 将运行开源语言的标准命令。
例如,heroku 将在您的 angular/nodejs 应用程序中运行 npm install 和 npm run start。如果您没有将 start 脚本放在 package.json 中,则会引发错误。您的 spring boot rest api 也会发生同样的情况。
如果您当前的 Spring Boot api 有任何错误,请尝试将其与我的模板进行比较 https://github.com/jrichardsz/spring-boot-templates/tree/master/000-hello-world。
我想要码头工人
无论如何,如果您想在 heroku 中使用 docker,只需将经典的 Dockerfile 放入任何 git 存储库并将它们推送到 heroku。智能引擎会检测并部署它。