首页 > 解决方案 > Heroku 上的 Bitnami-docker-keycloak:Web 进程无法绑定到 $PORT(错误 R10)

问题描述

我想在 heroku 上放置一个 keycloak 的 docker 图像,然后按照以下说明进行操作:

heroku auth:token
docker login --username=_ --password=${YOUR_TOKEN} registry.heroku.com
docker pull bitnami/keycloak:latest
docker images (to get image_id)
docker tag {image_id} registry.heroku.com/{heroku_app_name}/web
docker push registry.heroku.com/{heroku_app_name}/web
heroku container:release web -a {heroku_app_name}

之后,我在 heroku 上添加了postgresql ,然后配置了vars。一切正常,直到我收到此错误。如果我在 heroku 中添加另一个 PORT 变量,它就不起作用

标签: dockerherokudeploymentportkeycloak

解决方案


您不能8081在 Heroku 上硬编码端口 ( ),但您必须使用您$PORT提供的环境变量(这是您的 Web Dyno 的动态端口)。

Web 进程必须侦听 $PORT 上的 HTTP 流量

在 Heroku 上,您无法运行docker run -e KEYCLOAK_HTTP_PORT=$PORT bitnami/keycloak:latest,但您可以提供 Dockerfile 以使用您需要的配置/变量启动应用程序(使用CMD


推荐阅读