ฉันมีแอพพลิเคชั่น Dart สองตัวที่ฉันต้องเทียบท่า แอพทั้งสองนี้ใช้ไดเรกทอรีแหล่งข้อมูลที่แชร์
เนื่องจาก Docker ป้องกันการเพิ่มไฟล์จากโฟลเดอร์นอกไดเรกทอรีบริบท ( project/app1
) ฉันไม่สามารถเพิ่มไฟล์จาก../shared
หรือจากshared
(symlink ด้านในprojects/app1
)
ฉันกำลังมองหาวิธีที่จะหลอกนักเทียบท่าให้ทำมันอยู่ดี
โครงสร้างโครงการที่เรียบง่ายของฉัน
- projects
- app1
- Dockerfile
- shared (symlink ../shared)
- otherSource
- app2
- Dockerfile
- shared (symlink ../shared)
- otherSource
- shared
- source
ฉันสามารถเลื่อนDockerfile
ขึ้นหนึ่งระดับและเรียกใช้docker build
จากที่นั่น แต่แล้วฉันต้องการ Dockerfiles สองอัน (สำหรับ app1 และ app2) ในไดเรกทอรีเดียวกัน
แนวคิดปัจจุบันของฉันคือถ้าฉันสามารถซ่อนความจริงที่projects/app1/shared
เป็น symlink ปัญหานี้จะแก้ไขได้ ฉันตรวจสอบว่าฉันสามารถแชร์projects
โดยใช้ Samba และทำการติดตั้งใหม่ที่อื่นและกำหนดค่า Samba เพื่อรักษา symlink เช่นโฟลเดอร์ปกติ แต่ไม่พบว่ามีการรองรับหรือไม่ (ฉันยังไม่เคยลอง Samba มาก่อน .
มีเครื่องมือหรือเคล็ดลับอื่น ๆ ที่จะอนุญาตหรือไม่
ฉันจะไม่เปลี่ยนโครงสร้างไดเรกทอรีเพราะจะทำให้เกิดปัญหาอื่นและไม่คัดลอกไฟล์ไปมา