ฉันกำลังพยายามทำ https://devopswithdocker.com/ แน่นอน แต่ฉันไม่คุ้นเคยกับ node.js และตอบสนองมากเกินไป ฉันโคลนที่เก็บ ที่นี่ และสร้างไฟล์ Dockerfile ในส่วนแบ็กเอนด์ตัวอย่างและส่วนหน้าตัวอย่าง ไฟล์ Docker ของฉันมีลักษณะดังนี้:
ตัวอย่างส่วนหน้า / Dockerfile.dll
จากโหนด:14
เวิร์กดีอาร์ /usr/src/app
สำเนา .
ENV REACT_APP_BACKEND_URL=http://127.0.0.1:8080/
ติดตั้ง RUN npm
RUN npm รันบิลด์
RUN npm install -g ให้บริการ
CMD ให้บริการ -s -l 5,000 สร้าง
ตัวอย่างแบ็กเอนด์ / Dockerfile
จากโกแลง:1.16
เวิร์กดีอาร์ /usr/src/app
สำเนา .
ENV REQUEST_ORIGIN=http://127.0.0.1:5000/
RUN ไปสร้าง
CMD ./เซิร์ฟเวอร์
จากนั้นฉันก็วิ่ง:
สร้างนักเทียบท่า -t ส่วนหน้า
สร้างนักเทียบท่า -t แบ็กเอนด์
แล้ว:
นักเทียบท่ารัน -p 5000:5000 ส่วนหน้า
นักเทียบท่ารัน -p 8080:8080 แบ็กเอนด์
เมื่อฉันไปทดสอบการเชื่อมต่อที่ส่วนหน้า ฉันได้รับเว็บไซต์ที่มีปุ่มสำหรับทดสอบเส้นทาง ping ที่ส่วนหลัง แต่เมื่อฉันทดสอบ ฉันเห็น 403 และนโยบายผู้อ้างอิง: เข้มงวดต้นทางเมื่อข้ามต้นทางในเครือข่าย แท็บ สิ่งที่แปลกคือฉันสามารถไปที่เส้นทาง ping ที่ส่วนหลังจากเบราว์เซอร์ของฉันได้ แต่ไปที่คอนเทนเนอร์ส่วนหน้าไม่ได้ ฉันได้ลองแมปพอร์ต Docker ภายในกับพอร์ตอื่นโดยไม่ประสบความสำเร็จ ฉันได้ลองเปลี่ยน http://127.0.0.1:5000/ ในคอนเทนเนอร์ส่วนหลัง http://localhost:5000/, '*', http://127.0.0.1/, เปิดเผยพอร์ตใน Dockerfile อย่างชัดเจน ฯลฯ รับเรื่องนี้มาสองวันแล้ว ทุกสิ่งที่ฉัน google เกี่ยวกับปัญหานี้เกิดขึ้นกับการเปลี่ยนโหนดและรหัสการตอบสนองซึ่งเราไม่ควรต้องทำด้วยตนเอง