Как правильно отключить синхронизацию каталога в Docker?

Есть проект на Symfony, размещенный в docker контейнере

...
php:
        build:
            context: ./docker/php
        ports:
            - 9000:9000
        volumes:
            - ./:/srv/www/project
            - ./docker/php/www.conf:/usr/local/etc/php-fpm.d/www.conf
            - ./docker/php/php.ini:/usr/local/etc/php/php.ini
        environment:
            MYSQL_USER: ${MYSQL_USER}
            MYSQL_PASSWORD: ${MYSQL_PASSWORD}
...

Внутри /srv/www/project есть директория var, где находятся кэш и логи. При каждом запросе там обновляются файлы и накладные расходы в виде синхронизации нехило так подтормаживают контейнер.
Подскажите, как сделать так, чтобы файлы из директории var обновлялись в контейнере, но не синхронизировались?
  • Вопрос задан
  • 698 просмотров
Пригласить эксперта
Ответы на вопрос 1
@MadridianFox
Web-программист, многостаночник
Не знаю точно, но возможно в Symfony можно как-то изменить расположение папки var. Тогда вы сможете вынести её из volume и она будет внутри контейнера. Хотя там логи... логи удобно иметь снаружи.
Настраивать volume так чтобы часть его была... не volume.. это как-то противоестественно. Думаю это невозможно.
И вообще. Если это прод, то нужно при каждом релизе пересобирать образ так, чтобы наружу торчали только данные, а код был частью образа.
Если это dev, то в чём вообще проблема? Пусть себе тормозит. Кстати, если это dev и вы работаете под windows и docker крутится в виртуалке, то причина тормозов может быть не в volume, а в расшаренно папке виртуалки.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы