Я уже использую более высокие значения для worker_connections и worker_processes в nginx, применяя правила замены в app.yml.
Хотя я бы хотел поэкспериментировать, чтобы найти оптимальные значения, желательно без пересборки Discourse каждый раз. Есть ли способ изменить nginx.conf внутри контейнера и перезапустить процесс nginx без полной пересборки Discourse?
Да, вы можете войти в контейнер (например, ./launcher enter app), использовать apt для установки редактора, отредактировать файлы NGINX и выполнить sv restart nginx (возможно, подойдет и reload?).
Я так думал и пробовал, пока не увидел, что даже одного источника для apt нет. Добавить его самому как-то звучит ненадёжно для системы, которую я не знаю и которая работает в продакшене. Наличие хотя бы vi там действительно помогло бы для простых задач подмигивание
Я никогда не обращал внимания на источники apt, но у меня есть несколько шаблонов, которые выполняют apt-get update; apt-get install для установки необходимых компонентов в контейнере (например, для моего dashboard.literatecomputing.com требуются Python и Ansible). Это работало, или, по крайней мере, работало ещё в прошлую пятницу. Аналогично, шаблон, который я использую для выполнения миграций, добавляет vim и некоторые другие утилиты.
Я не рекомендую вручную редактировать конфигурации для продакшена, так как эти изменения, очевидно, будут утеряны при следующей пересборке. Однако, если ваша цель — просто протестировать значения и найти рабочие варианты, это, вероятно, достаточно хорошее решение (поскольку оно позволяет избежать множества пересборок).
Кроме того, при типичной настройке с двумя контейнерами время простоя при пересборке и запуске нового контейнера обычно составляет менее одной минуты.
Я бы тоже не стал обращать внимания на источники apt, но без них установка невозможна; в остальном мне всё равно.
root@forum-app:/var/www/discourse# apt install vi
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package vi
root@forum-app:/var/www/discourse# apt list sources
Listing... Done
root@forum-app:/var/www/discourse#
То же самое касается apt-get, vim или nano — просто для уверенности
Ubuntu что-то, и после apt update && apt dist-upgrade (где я ответил нет, потому что он хотел обновить pqsl, и я испугался) apt install nano успешно выполнился.
У меня на Ubuntu после /launcher enter app успешно выполняется apt update && apt install nano -y[1]. Поэтому, если apt не работает, я бы сказал, что либо сама система, либо Docker повреждены