Phusion-Passenger

乘客 6 未能啟動 - 無法連接到 TCP 套接字

  • January 4, 2019

我正在嘗試在乘客 6 中使用新的通用語言支持。在開發時,我可以生成我的展示 Go 應用程序,如下所示:

passenger start --app-start-command 'env PORT=$PORT ./main'

一切正常。

在我的伺服器(執行 Debian Stretch)上,當我嘗試執行完全相同的命令時出現以下錯誤:

$$ E 2019-01-02 20:17:13.7593 7371/Tr age/Cor/App/Implementation.cpp:221 $$:無法為應用程序生成程序(…):準備生成應用程序程序時發生作業系統錯誤:無法連接到 TCP 套接字“127.0.0.1:5000”:無法分配請求的地址(errno=99)

當我將命令執行為root. 但是,我可以直接執行 go 二進製文件(env PORT=5000 ./main)。

netstat -ntulp在嘗試啟動乘客之前和之後執行顯示沒有任何執行127.0.0.1:5000。啟動乘客後,我的伺服器正在監聽:::5000. 因此,Passenger 綁定到空的 IPv4 埠似乎存在問題。

我還要提到,我能夠在同一台伺服器上成功地使用Passenger 啟動rails 應用程序。

任何想法從哪裡開始尋找?

事實證明,該問題與github上的this issue #2144有關。起初我錯過了它,因為他們注意到的最初症狀是 CPU 峰值。

有一個帶有修復的分支- 從該分支建構乘客為我解決了這個問題。

引用自:https://serverfault.com/questions/947382