ฉันได้โหลดแอปขวด (appserver.py) บน Ubuntu 20.04 ด้วย nginx & gunicorn สิ่งนี้กำลังทำงานบน virtualbox VM บนเดสก์ท็อปของฉัน
ฉันสามารถเรียกใช้แอปได้สำเร็จในเซสชันเทอร์มินัลบน Ubuntu โดยเรียกใช้:
แอปเซิร์ฟเวอร์ gunicorn
ฉันพยายามสร้างบริการสำหรับแอพนี้เพื่อให้ทำงานโดยอัตโนมัติเมื่อบูต:
- ไฟล์ที่สร้าง:
/etc/nginx/sites-enabled/appserver
เซิร์ฟเวอร์{
ฟัง 8001;
server_name 192.168.68.105;
ที่ตั้ง / {
proxy_pass http://127.0.0.1:8000;
}
}
- สร้างไฟล์บริการ:
/etc/systemd/system/gunicorn.service
[หน่วย]
Description=บริการกูนิคอร์น
หลังจาก = network.target
[บริการ]
ผู้ใช้=อัฟชิน
Group=www-ข้อมูล
WorkingDirectory=/var/www/appserver/appserver
ExecStart=/usr/bin/gunicorn --workers 3 --bind unix:__init__.sock m 007 __init__
sudo nginx -t
- แสดงรูปแบบไฟล์ที่ถูกต้อง
sudo systemctl daemon โหลดซ้ำ
sudo บริการ gunicorn เริ่มต้น
สถานะ gunicorn บริการ sudo
- แสดงว่าบริการกำลังทำงานอยู่
เมื่อฉันเข้าถึงไซต์ ฉันได้รับข้อผิดพลาด 502 Bad Gateway บนหน้าเว็บ
- ไฟล์ข้อผิดพลาด nginx แสดง:
11/07/2021 20:38:41 [ข้อผิดพลาด] 3588#3588: *38 การเชื่อมต่อ() ล้มเหลว (111: การเชื่อมต่อถูกปฏิเสธ) ขณะเชื่อมต่อกับอัปสตรีม ไคลเอ็นต์: 192.168.68.120 เซิร์ฟเวอร์: 192.168.68.105 คำขอ: "GET /favicon.ico HTTP/1.1", อัปสตรีม: "http://127.0.0.1:8000/favicon.ico", โฮสต์: "192.168.68.105:8001", ผู้อ้างอิง: "http://192.168.68.105:8001/ "
ฉันตั้งค่าการเป็นเจ้าของไฟล์ทั้งหมดใน appserver เป็น www-data:www-data - ฉันลองใช้สิทธิ์ 777 กับทุกไฟล์เพื่อให้มันใช้งานได้ แต่ก็ไม่มีโชค
ผมทำอะไรผิดหรือเปล่า?