Постоянное требование объема Kubernetes к проблеме / var / www / html - PullRequest
0 голосов
/ 14 июня 2019

У меня есть развертывание magento на nginx, которое использует постоянный том и постоянное требование тома.Все отлично работает, но я борюсь с одной проблемой.Я использую initContainer для установки magento через cli (который работает нормально), но как только мой POD запускается и монтирует PVC к /var/www/html (мой webroot), данные ранее (в initContainer) установленных данных теряются (или лучше заменяются)по новой горе).Мой обходной путь состоял в том, чтобы установить magento в /tmp/magento (в initContainer), и как только «настоящий» POD активен, данные из /tmp/magento копируются в /var/www/html.Как вы можете себе представить, это занимает некоторое время и является своего рода адским разрешением, но оно работает.

Есть ли какой-нибудь способ, которым я могу установить свое приложение прямо в целевой каталог, не "переопределяя" мои файлы?Я должен использовать PV / PVC, потому что я монтирую каталог POD через NFS, а также я не хочу терять свои файлы.

Обновление: развертывание Magento находится внутри образа докера и устанавливается во времясборка докера.Поэтому, если я устанавливаю данные в целевое местоположение, монтирование kubernetes заменяет данные на пустое монтирование.Это главная причина обхода.Цель состоит в том, чтобы установить весь образ внутри образа.

1 Ответ

1 голос
/ 15 июня 2019

Если Magento уже установлен внутри изображения и расположен по некоторому пути (скажем, /tmp/magento), но вы хотите, чтобы он был доступен по пути /var/www/html/magento, почему бы вам просто не создать символическую ссылку, указывающую на существующее местоположение?

Таким образом, ваш Magento будет установлен во время процесса создания образа и в точке входа дополнительная команда

ln -s /tmp/magento /var/www/html/magento

будет запущено до того, как сервер Nginx запустится сам. Нет необходимости в intiContainers.

...