Bir php uygulaması dockerize çalışıyorum. Dockerfile'da arşivi indiriyorum, çıkarıyorum vb.
Her şey iyi çalışıyor, ancak yeni bir sürüm yayınlanırsa ve dockerfile'ı güncellersem Uygulamayı yeniden yüklemem gerekir, çünkü config.php'nin üzerine yazılır.
Bu yüzden veritabanıyla yaptığım gibi dosyayı bir birim olarak bağlayabileceğimi düşündüm.
Bir birim ve doğrudan bir yolla iki şekilde denedim.
liman işçisi-oluşturma:
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:
Hangi hataya neden olur:
Ve bunu monte edilmiş bir hacim olarak belirli bir yolla denedim.
/src/docker/myapp/upload:/var/www/html/upload
/src/docker/myapp/upload:/var/www/html/config.php
Ancak her iki yol da çalışmıyor. Takılan birim ile yüklemenin oluşturulduğunu görüyorum.
Ama sonra başarısız olur
/var/www/html/config.php \\ "\\" dizin değil \\ "\" "
Eğer denersem
/src/docker/myapp/upload/config.php:/var/www/html/config.php
Docker yükleme klasörünü ve ardından bir config.php klasörü oluşturur. Dosya değil.
Yoksa yapılandırmayı devam ettirmenin başka bir yolu var mı?