# Застрявшие флаги обновления веб-интерфейса после полной пересборки

**URL:** https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936
**Category:** Bug
**Tags:** fixed
**Created:** [18.Апрель.2026 00:27:00 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936 "2026-04-18T00:27:00Z")
**Posts on this page:** 14
**Page:** 1

<div class="post-metadata">

### Author: ![fuse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fuse/32/221005_2.png) [@fuse](https://meta.discourse.org/u/fuse)
#### Post date: [18.Апрель.2026 00:27:01 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/1 "2026-04-18T00:27:01Z")

</div>

Делюсь этим на случай, если это поможет кому-то ещё, кто видит «Обновление» в панели администратора, хотя на самом деле обновление не идёт, а форум при этом выглядит исправным.

Хотя это никогда не влияло на обновления через Docker Manager, в последних нескольких версиях мне приходилось выполнять обновления через CLI, так как панель администратора постоянно показывала, что Discourse обновляется.

Мой форум небольшой, без пользовательских плагинов.

Решением для устранения проблемы стала очистка кэша Redis.

Хотя я не могу раскрыть первопричину, было крайне неприятно упереться в предел своих знаний и понимания процесса обновления Discourse (это не жалоба, а признание).

До этого момента пересборка приложения всегда была надёжным решением практически для любой проблемы.

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [18.Апрель.2026 04:45:54 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/2 "2026-04-18T04:45:54Z")

</div>

Redis также хранит пользовательские сессии и многое другое. Полная очистка Redis приведёт к выходу всех пользователей из системы и удалению всех ожидающих заданий Sidekiq. Запланированные задания вернутся только после следующего перезапуска.

Это должно быть крайней мерой, и даже в этом случае я рекомендую определить, какие именно ключи являются причиной проблемы, вместо выполнения команды flushall. Это всё равно что поджечь целое здание, чтобы избавиться от мыши.

---

<div class="post-metadata">

### Author: ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)
#### Post date: [18.Апрель.2026 07:15:02 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/3 "2026-04-18T07:15:02Z")

</div>

Можно ли вместо этого перезапустить Redis? Я полагаю, что это база данных в оперативной памяти, поэтому при перезагрузке сервера ничего не сохранится. А перезагрузка сервера не является разрушительной (и может произойти в любой момент).

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [18.Апрель.2026 07:39:40 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/4 "2026-04-18T07:39:40Z")

</div>

> [@Ed\_S](#):
>
> Я думаю, это база данных в оперативной памяти, поэтому ничего не сохраняется после, скажем, перезагрузки сервера.

Это неверно. Redis сохраняет данные на диск.

---

<div class="post-metadata">

### Author: ![fuse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fuse/32/221005_2.png) [@fuse](https://meta.discourse.org/u/fuse)
#### Post date: [18.Апрель.2026 11:35:24 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/5 "2026-04-18T11:35:24Z")

</div>

> [@RGJ](#):
>
> Это должно быть крайней мерой

Я ценю ваши знания и опыт.

Что я пробовал:

Обновление через панель администратора (не удалось/не началось)

Следовал инструкциям по ручному обновлению Discourse (за последние 3 выпуска)

Выполнял несколько пересборок приложения-лаунчера.

Искал на форуме похожие проблемы и решения.

В итоге обратился к ChatGPT, который выявил варианты настройки Redis, хотя сам ChatGPT назвал это маловероятным решением (и предложил те же шаги, которые я уже пробовал).

Именно это действие помогло решить проблему.

Я понимаю эту аналогию.

Что ещё я мог бы сделать, чтобы лучше понять и решить проблему альтернативным способом?

---

<div class="post-metadata">

### Author: ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)
#### Post date: [18.Апрель.2026 15:26:44 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/6 "2026-04-18T15:26:44Z")

</div>

Чтобы прояснить: вы обнаружили, что

```plaintext
cd /var/discourse
git pull
./launcher rebuild app

```

не сработало для вас? (В чём именно оно не сработало? Это стандартная установка?)

---

<div class="post-metadata">

### Author: ![fuse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fuse/32/221005_2.png) [@fuse](https://meta.discourse.org/u/fuse)
#### Post date: [18.Апрель.2026 16:55:46 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/7 "2026-04-18T16:55:46Z")

</div>

Не выполнялось обновление через git pull, но была выполнена пересборка лаунчера.

Этот процесс прошёл успешно, просто в админ-панели так и не было снято состояние, что обновление находится в процессе.

---

<div class="post-metadata">

### Author: ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)
#### Post date: [18.Апрель.2026 17:17:44 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/8 "2026-04-18T17:17:44Z")

</div>

Спасибо — значит, проблема в том, что обновление панели администратора не работает у вас. Кстати, у меня оно тоже не работает уже какое-то время! Было бы лучше, если бы оно работало.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [18.Апрель.2026 20:42:03 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/9 "2026-04-18T20:42:03Z")

</div>

Я предпочитаю обновление через командную строку, но на этот раз я обновил Docker и Discourse через интерфейс на iPhone 15, и всё прошло довольно гладко (стандартная установка на DO).

 ![IMG5141](https://global.discourse-cdn.com/meta/original/4X/c/0/d/c0da916010df1ac282fda8db83e951c95199a833.jpeg)  
 ![IMG5142](https://global.discourse-cdn.com/meta/original/4X/9/1/6/9163ced18d1ddcf3783ae27655695a9e21b35250.jpeg)

Обычно я делаю всё через CLI на одном из своих компьютеров, так как в прошлый раз, когда я пробовал через интерфейс (несколько месяцев назад), у меня не получилось, и всё равно пришлось подключаться по SSH.

---

<div class="post-metadata">

### Author: ![Ethsim2](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ethsim2/32/522255_2.png) [@Ethsim2](https://meta.discourse.org/u/Ethsim2)
#### Post date: [19.Апрель.2026 06:46:17 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/10 "2026-04-19T06:46:17Z")

</div>

Что возвращает команда `free -h`?

Чему установлено значение `UNICORN_WORKERS` в файле `app.yml`?

Чему установлено значение `db_shared_buffers` в файле `app.yml`?

Закомментирован ли параметр `db_work_mem` в файле `app.yml`?

Сколько (виртуальных) процессоров имеет ваш сервер?

---

<div class="post-metadata">

### Author: ![fuse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fuse/32/221005_2.png) [@fuse](https://meta.discourse.org/u/fuse)
#### Post date: [19.Апрель.2026 23:10:09 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/11 "2026-04-19T23:10:09Z")

</div>

Команда free -h показывает 3,8 ГиБ памяти: 1,7 ГиБ используется, 134 МиБ свободно, 1,0 ГиБ общий объём, buff/cache 2,0 ГиБ, доступно 788 МиБ.

Своп: 2,0 ГиБ всего, 290 МиБ используется, 1,7 ГиБ свободно.

UNICORN\_WORKERS: 4

db\_shared\_buffers: 1 ГБ

db\_work\_mem закомментирован, установлен на 40 МБ.

Я использую экземпляр с 2 виртуальными процессорами и 4 ГБ оперативной памяти.

Спасибо за вопросы! 😃

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [20.Апрель.2026 21:36:42 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/13 "2026-04-20T21:36:42Z")

</div>

Это должно исправить ситуацию, сохраняющуюся при пересборках

> <https://github.com/discourse/docker_manager/pull/319>
>
> \*\*Previously\*\*, there was no way to clear the Redis flags that drive the web upg…rade UI state, so a failed web update followed by a manual \`./launcher rebuild app\` could leave the admin interface stuck on "Updating...".
> 
> \*\*In this update\*\*, adds a rake task that clears \`upgrade:\*\` keys and the \`docker\_manager:upgrade:server\_restarting\` flag across all sites. Intended to be invoked from \`discourse\_docker\`'s \`web.template.yml\` so the UI state is reset after a full container rebuild.

> <https://github.com/discourse/discourse_docker/pull/1050>
>
> \*\*Previously\*\*, a failed web update via the \`docker\_manager\` plugin left Redis f…lags set that kept the admin UI showing "Updating..." even after the user recovered with \`./launcher rebuild app\`.
> 
> \*\*In this update\*\*, \`web.template.yml\` invokes \`docker\_manager:stop\_all\_upgrades\` right after \`db\_migrate\` to clear those flags. Guarded by a file-existence check on the rake task and \`raise\_on\_fail: false\` so instances without \`docker\_manager\`, or with an older plugin version that predates the task, are unaffected.
> 
> Paired with https://github.com/discourse/docker\_manager/pull/319.

---

<div class="post-metadata">

### Author: ![fuse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fuse/32/221005_2.png) [@fuse](https://meta.discourse.org/u/fuse)
#### Post date: [20.Апрель.2026 23:20:56 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/14 "2026-04-20T23:20:56Z")

</div>

Вау! Это потрясающе, спасибо! 😃

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [23.Апрель.2026 23:21:07 UTC](https://meta.discourse.org/t/stuck-web-upgrade-flags-after-a-full-rebuild/400936/15 "2026-04-23T23:21:07Z")

</div>

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.
