이것은 내 Heroku/Clojure problem here의 질문입니다. 그 스레드에서 설명한 것처럼, 나는 Heroku의 마스터에게 내 앱을 보낼 수 있었고, 그것을 배포했다.Heroku/Clojure 배치상의 포트 오류
하지만 내 앱의 URL로 이동하려고하면 아래 오류가 표시됩니다. 그것은 기괴한 포트 오류이지만 Heroku에 Clojure 응용 프로그램을 배포 할 때 이러한 세부 사항을 제어 할 수 있다고 생각하지 않았습니다. 제 설정은 아주 간단하다고 생각합니다. 이 오류를 해결하기 위해 할 수있는 일이 있습니까?
는 Procfile는
web: lein run -m http.handler
http.handler
... (def app (handler/site main))
오류가
2011-12-31T04:10:02+00:00 app[web.1]: Listening for transport dt_socket at address: 41208 2011-12-31T04:10:03+00:00 heroku[web.1]: Stopping process with SIGKILL 2011-12-31T04:10:03+00:00 heroku[web.1]: Error R11 (Bad bind) -> Process bound to port 41208, should be 55032 (see environment variable PORT) 2011-12-31T04:10:04+00:00 heroku[web.1]: State changed from starting to crashed 2011-12-31T04:10:05+00:00 heroku[web.1]: Process exited 2011-12-31T04:20:08+00:00 heroku[web.1]: State changed from crashed to created 2011-12-31T04:20:08+00:00 heroku[web.1]: State changed from created to starting 2011-12-31T04:20:12+00:00 heroku[web.1]: Starting process with command `lein run -m http.handler` 2011-12-31T04:20:16+00:00 app[web.1]: Listening for transport dt_socket at address: 49151 2011-12-31T04:20:16+00:00 heroku[web.1]: Error R11 (Bad bind) -> Process bound to port 49151, should be 39092 (see environment variable PORT) 2011-12-31T04:20:16+00:00 heroku[web.1]: Stopping process with SIGKILL 2011-12-31T04:20:17+00:00 heroku[web.1]: State changed from starting to crashed 2011-12-31T04:20:18+00:00 heroku[web.1]: Process exited 2011-12-31T04:31:13+00:00 heroku[web.1]: State changed from crashed to created 2011-12-31T04:31:13+00:00 heroku[web.1]: State changed from created to starting 2011-12-31T04:31:16+00:00 heroku[web.1]: Starting process with command `lein run -m http.handler` 2011-12-31T04:31:20+00:00 app[web.1]: Listening for transport dt_socket at address: 44321 2011-12-31T04:31:20+00:00 heroku[web.1]: Error R11 (Bad bind) -> Process bound to port 44321, should be 17211 (see environment variable PORT) 2011-12-31T04:31:20+00:00 heroku[web.1]: Stopping process with SIGKILL 2011-12-31T04:31:22+00:00 heroku[web.1]: State changed from starting to crashed 2011-12-31T04:31:22+00:00 heroku[web.1]: Process exited 2011-12-31T04:44:59+00:00 heroku[web.1]: State changed from crashed to created 2011-12-31T04:44:59+00:00 heroku[web.1]: State changed from created to starting 2011-12-31T04:45:02+00:00 heroku[web.1]: Starting process with command `lein run -m http.handler` 2011-12-31T04:45:05+00:00 app[web.1]: Listening for transport dt_socket at address: 37500 2011-12-31T04:45:06+00:00 heroku[web.1]: Error R11 (Bad bind) -> Process bound to port 37500, should be 14046 (see environment variable PORT) 2011-12-31T04:45:06+00:00 heroku[web.1]: Stopping process with SIGKILL 2011-12-31T04:45:07+00:00 heroku[web.1]: State changed from starting to crashed 2011-12-31T04:45:07+00:00 heroku[web.1]: Process exited 2011-12-31T04:49:22+00:00 heroku[router]: Error H10 (App crashed) -> GET bkeeping.herokuapp.com/ dyno= queue= wait= service= status=503 bytes= 2011-12-31T04:49:31+00:00 heroku[router]: Error H10 (App crashed) -> GET bkeeping.herokuapp.com/favicon.ico dyno= queue= wait= service= status=503 bytes=
012,346,999있는 것으로 보인다. 하지만 Compojure/Ring/Jetty 배포에서 포트 할당을 제어 할 수 있다고 생각하지 않습니다. 내가 잘못? Webnoir와 함께 행동이 바뀔까요?
감사합니다.
이것은 분명히 수동으로 설정 한 포트가 아닌'(System/getenv "PORT") 포트로 설정하여 비슷한 문제가 발생했습니다. – djhworld
의견을 보내 주셔서 감사합니다. [Compojure http.handler] (http://pastebin.com/QpSA5EXy)가 PORT를 전달하도록 수정되었습니다. 하지만 여전히 [같은 포트 오류] (http://pastebin.com/SPegFZFq)가 나타납니다. 필요한 경우 더 많은 코드를 포기할 수 있습니다. 하지만 내 ** Procfile **는 동일하게 보입니다. 그리고 나는'git push heroku : master'와 함께 내 사용자 지정 브랜치를 heroku로 푸시합니다. –
Nutritioustim
코드에 오류가 표시되지 않습니다. 주 처리기와 procfile을 사용하여 해당 프로젝트를 온라인에 던질 수 있습니까? 다른 코드를 삭제할 수 있습니다. Hello World를 종료하면 기꺼이 제공 할 수 있습니다. – leonardoborges