云端使用gunicorn啟動(dòng)flask項(xiàng)目,私網(wǎng)ip填寫(xiě)正確,但是一直報(bào)連接超時(shí)。
原因是上一次啟動(dòng)的服務(wù)沒(méi)有被關(guān)閉,端口號(hào)被占用導(dǎo)致。
1、查看和關(guān)閉正在運(yùn)行的gunicorn進(jìn)程
您可以使用以下命令來(lái)列出當(dāng)前正在運(yùn)行的 gunicorn 進(jìn)程以及它們所在的端口號(hào):
sudo lsof -iTCP -sTCP:LISTEN -P | grep gunicorn
該命令將顯示類似以下內(nèi)容的輸出:
gunicorn 4004 root 7u IPv4 55772 0t0 TCP *:8080 (LISTEN)
輸出的第二列是進(jìn)程ID(PID),第六列則是該進(jìn)程的端口號(hào)。在上面的示例中,PID為4004的進(jìn)程正在偵聽(tīng)端口8080。您可以使用以下命令殺死此進(jìn)程:
sudo kill -9 4004
只需用實(shí)際的PID替換命令中的4004即可。這將立即停止 gunicorn 進(jìn)程并釋放使用的端口。
如果您的應(yīng)用程序使用了多個(gè) gunicorn 工作進(jìn)程,則必須重復(fù)上述操作,并殺死所有工作進(jìn)程。
請(qǐng)注意,強(qiáng)制終止進(jìn)程可能會(huì)導(dǎo)致數(shù)據(jù)損壞或系統(tǒng)不穩(wěn)定,因此建議在殺死進(jìn)程之前備份數(shù)據(jù)并小心操作。