เรียกใช้แอปพลิเคชันขวด daemonized ด้วย nginx

ฉันมีแอปพลิเคชันแบบขวด (โดยเฉพาะ homu) ซึ่งฉันต้องการปรับใช้บนเซิร์ฟเวอร์

วิธีดั้งเดิมในการเรียกใช้แอปพลิเคชันนี้คือเพียงเรียกใช้โปรแกรม (เช่น python whatever.py) โดยไม่ต้องรวมเซิร์ฟเวอร์ใดๆ แอปพลิเคชันมีสถานะและอัปเดตสถานะโดยฟัง Github webhooks API นอกจากนี้ยังมีแผงการกำหนดค่าที่ส่งขวดมาให้ด้วย

แม้ว่าจะสามารถกู้คืนจากข้อขัดข้องได้ แต่ต้องใช้คำขอ GitHub API จำนวนมาก (ซึ่งมีการควบคุมปริมาณ) ดังนั้นจึงควรปล่อยให้มันทำงานอย่างต่อเนื่อง

ตอนนี้ฉันรู้ วิธี daemonize แอปพลิเคชันขวดแล้ว แต่จำเป็นต้องเรียกใช้เป็นโปรแกรมแยกต่างหากที่ทำงานบนพอร์ตแยกต่างหากจาก nginx ฉันต้องการให้ nginx มอบหมายเส้นทางบางอย่างให้กับแอปพลิเคชันขวดที่ทำงานอยู่

ฉันจะทำอย่างไร?

(หรืออีกทางหนึ่ง วิธีสำหรับฉันในการตั้งค่าเพื่อให้ nginx รับผิดชอบในการทำให้มันทำงานต่อไปก็ดีเช่นกัน)


person Manishearth    schedule 03.04.2015    source แหล่งที่มา
comment
คุณมีคำถามอะไร?   -  person ron rothman    schedule 03.04.2015


คำตอบ (1)


วิธีหนึ่งในการทำเช่นนี้คือการย้อนกลับพร็อกซี

location /foo/bar {
  proxy_pass http://localhost:someport/;
}

จากนั้นเรียกใช้แอปพลิเคชันขวดบน someport

person Manishearth    schedule 06.04.2015