ฉันกำลังพยายามเชื่อมต่อแอปพลิเคชัน php เข้าด้วยกัน ใน dockerfile ฉันจะดาวน์โหลดไฟล์เก็บถาวรแยกมันออกเป็นต้น
ทุกอย่างใช้งานได้ดี แต่ถ้ามีเวอร์ชั่นใหม่ออกมาและฉันอัปเดต dockerfile ฉันต้องติดตั้งแอปพลิเคชันใหม่เนื่องจาก config.php ถูกเขียนทับ
ดังนั้นฉันคิดว่าฉันสามารถเมานไฟล์เป็นไดรฟ์เหมือนที่ฉันทำกับฐานข้อมูล
ฉันลองสองวิธีด้วยระดับเสียงและเส้นทางโดยตรง
นักเทียบท่า-เขียน:
version: '2'
services:
app:
build: src
ports:
- "8080:80"
depends_on:
- mysql
volumes:
- app-conf:/var/www/html/upload
- app-conf:/var/www/html/config.php
environment:
DB_TYPE: mysql
DB_MANAGER: MysqlManager
mysql:
image: mysql:5.6
container_name: mysql
volumes:
- mysqldata:/var/lib/mysql
ports:
- 3306:3306
environment:
MYSQL_ROOT_PASSWORD:
MYSQL_DATABASE:
MYSQL_USER:
MYSQL_PASSWORD:
volumes:
mysqldata:
app-conf:
ซึ่งส่งผลให้เกิดข้อผิดพลาด:
และฉันลองกับเส้นทางที่กำหนดเป็นไดรฟ์ข้อมูลที่ติดตั้ง
/src/docker/myapp/upload:/var/www/html/upload
/src/docker/myapp/upload:/var/www/html/config.php
อย่างไรก็ตามทั้งสองวิธีไม่ทำงาน ฉันเห็นว่าการอัพโหลดได้ถูกสร้างขึ้น
แต่แล้วก็ล้มเหลวด้วย
/var/www/html/config.php \\ "เกิดจาก \\" ไม่ใช่ไดเรกทอรี \\ "\" "
ถ้าฉันลองด้วย
/src/docker/myapp/upload/config.php:/var/www/html/config.php
นักเทียบท่าสร้างโฟลเดอร์อัพโหลดแล้วเป็นโฟลเดอร์ config.php ไม่ใช่ไฟล์
หรือมีวิธีอื่นในการกำหนดค่ายังคงอยู่หรือไม่