ฉันกำลังทดลองใหม่กับนักเทียบท่าและ nginx และดูเหมือนว่าฉันไม่สามารถสร้าง Nginx ได้
บริบท:
- มีคอนเทนเนอร์นักเทียบท่า 3 ตัวที่รันบนการเขียนนักเทียบท่า (Nginx, ส่วนหน้าและส่วนหลังของ API)
- เว็บไซต์ทำงานได้ดีกับที่อยู่ IP
- โดยใช้ชื่อโดเมนเปลี่ยนเส้นทางไปยัง IP ของเซิร์ฟเวอร์
ปัญหา :
ฉันไม่สามารถทำให้ ngnix แสดงชื่อโดเมนในแถบ url ได้ แต่จะแสดง IP ของเซิร์ฟเวอร์
ไม่แน่ใจว่าเป็นปัญหาของนักเทียบท่าหรือ nginx conf
ngnix คอน:
เซิร์ฟเวอร์ {
ฟัง 80 default_server;
ฟัง [::]:80 default_server;
server_name โดเมนเนม.com ;
#ส่วนหน้า
ที่ตั้ง / {
proxy_pass http://frontend-ชื่อ:8080; # ชื่อเดียวกับนามแฝงของเครือข่าย
}
#แบ็กเอนด์
ที่ตั้ง /api {
proxy_pass http://backend-name:5000/; # <--- หมายเหตุนี้มีพิเศษ /
}
# คุณอาจต้องใช้สิ่งนี้เพื่อป้องกันการเรียกซ้ำ 404
สถานที่ = /404.html {
ภายใน;
}
}
ไฟล์เขียนนักเทียบท่า:
รุ่น : "3"
เครือข่าย:
แยกเครือข่าย:
คนขับ: สะพาน
บริการ :
ส่วนหน้า:
container_name : ส่วนหน้า
สร้าง: ./เว็บไซต์ส่วนตัว
พอร์ต:
- 8080:8080
เครือข่าย:
แยกเครือข่าย:
นามแฝง:
- ชื่อส่วนหน้า
แบ็กเอนด์:
container_name : แบ็กเอนด์
สร้าง: ./API/test
พอร์ต:
- 5,000:5000
เครือข่าย:
แยกเครือข่าย:
นามแฝง:
- แบ็กเอนด์ชื่อ
พร็อกซี nginx:
ขึ้นอยู่กับ:
- ส่วนหน้า
- แบ็กเอนด์
ภาพ: nginx:alpine
ปริมาณ:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
เครือข่าย:
แยกเครือข่าย:
นามแฝง:
- ผู้รับมอบฉันทะ
พอร์ต:
- 80:80
- 443:443
ความคิดใด ๆ ?
PS: ไม่ใช่นักพัฒนาที่มีประสบการณ์และเป็นคนที่อยากรู้อยากเห็น