Если в проекте используется свой сокет-сервер, то по окончании деплоя слать в него сообщение, что вышла новая версия. Подключенные к сокету клиенты по этому сообщению поймут - нужно что-то сделать.
В остальных случаях подойдет вариант с заголовками, предложенный выше Вадим.
---
А еще обращу внимание, что не стоит делать принудительный рефреш, лучше показывать предупреждение, что вышла новая версия, поэтому сайт может работать не корректно и рекомендуется обновить страницу; кнопки для рефреша / закрытия модалки.
Например, если пользователь в момент деплоя заполнял какую-то форму на этой странице или пролистал ее до середины, принудительный рефреш заставит его грустить)
Вы указываете pattern /"http(.*)\/uploads\/(.*).jpg/, т.е. / - это разделитель. Конструкция \/ дальше - это экранированный слеш. Т.е. если бы разделителем было скажем @, то и экранировать не нужно было бы.
Далее, параметр replacement. Здесь не нужна регулярка, тут указывается шаблон замены. Это строка, в которой могут быть включения (подмаски) из найденных в pattern. В вашем случае две подмаски: после http и после uploads/. Значит можно в replacement указать http$1/uploads/$2.webp
Artem0071, принято. Если не билдится на новой версии и вы пробуете внутри контейнера на старой, почему тогда вывод о том, что это именно в контейнере проблема, а не с node? может старая версия и должна так долго билдить...
Тогда аналогично и с php. Может локально у вас стоит php7+, а в проекте php5.
Поэтому для теста попробуйте докеру дать максимум ресурсов, запустить сборку и сравнить показатели (на меньших ресурсах / локально). Так вы поймёте, во что упираетесь: если с максимальными ресурсами в контейнере заметно медленнее, чем локально, значит проблема не в докере, а в версиях node/php/...
Про то, что будут отличаться - правильно. Но то, что будут установлены другие - тут вы не правы. Любой менеджер зависимостей после update сохраняет установленные версии в lock-файл: composer.lock, package-lock.json и т.п.
Если даже у вас версия на dev/prod отличается, то composer install установит ровно то, что у вас в lock-файле.
Kirill Ivanov, это одно и то же
Не пойму, что у вас не получается:
Если хотите, чтобы при изменении в консоль выводилось, подпишитесь на событие change.
Когда говорят о конкурентности ниши, как правило знают пару-тройку ключевых фраз. Ну или их можно подобрать через тот же Вордстат или Букварикс. Этого вполне достаточно для грубой оценки.
Да, может сообщать. Главное не забыть потом выключить в проде показ этих ошибок.
Про проектирование согласен. Давайте предложим автору вопроса материалы для ознакомления?
Проверил в Chrome, Safari и Opera - не повторяется.
Поставил для интереса Yandex-браузер - есть подобное поведение, видимо из-за backdrop-filter. Если закомментировать эти две строки, то все хорошо.
https://caniuse.com/#search=backdrop-filter
Про поддержку конкретно в яндекс-браузере не понятно. Хотя странно, что в хроме и опере проблемы нет, вроде бы и движок одинаковый. Может быть по-умолчанию за флагом спрятано...
В остальных случаях подойдет вариант с заголовками, предложенный выше Вадим.
---
А еще обращу внимание, что не стоит делать принудительный рефреш, лучше показывать предупреждение, что вышла новая версия, поэтому сайт может работать не корректно и рекомендуется обновить страницу; кнопки для рефреша / закрытия модалки.
Например, если пользователь в момент деплоя заполнял какую-то форму на этой странице или пролистал ее до середины, принудительный рефреш заставит его грустить)