Я пытаюсь закрепить приложение php. В файле dockerfile я загружаю архив, извлекаю его и т.д.
Все работает отлично, однако, если новая версия будет выпущена, и я обновляю файл докеров, я должен переустановить приложение, потому что config.php перезаписывается.
Поэтому я думал, что смогу монтировать файл как том, как я делаю с базой данных.
Я пробовал это двумя способами: с томом и прямым путем.
докер-Compose:
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
Docker создает папку для загрузки, а затем папку config.php. Не файл.
Или существует другой способ сохранения конфигурации?