Phusion-Passenger
乘客 6 未能啟動 - 無法連接到 TCP 套接字
我正在嘗試在乘客 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 峰值。
有一個帶有修復的分支- 從該分支建構乘客為我解決了這個問題。