Какой тег Docker использовать для обновления с 2.9.0.beta5 до 3.5.0.beta7?

Привет, ребята,

  1. Discourse работает в Docker.

  2. Вот сообщение, которое мы видим:
    «В данный момент у нас версия 2.9.0.beta5, но текущий релиз (который помечен как критически важный для обновления) — 3.5.0.beta7».

  3. Если я запускаю
    ./launcher rebuild app

то получаю:

x86_64 arch detected.
ERROR: Kernel version 3.10.0-1160.119.1.el7.x86_64 not supported, please upgrade to at least 4.4.0

Это происходит потому, что launcher загружает последнюю сборку. Какой тег мне использовать для версии 3.5.0.beta7?

Я предполагаю, что после указания правильного тега я смогу выполнить обновление следующей командой:

./launcher rebuild app --run-image ‘discourse/base:<здесь версия тега>’

Я пытался найти эту информацию, но ничего не смог найти.

Заранее спасибо.

Какую ОС вы пытаетесь использовать для запуска Discourse? Возможно, пришло время обновиться до чего-то более современного, чем устаревшая RHEL 7.

Привет,

Это CentOS 7:

]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

uname -a

Linux msm5257.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Он перешёл в конец жизненного цикла более года назад. What to know about CentOS Linux EOL

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

Если у вас нет особой причины любить CentOS, я бы выбрал Ubuntu, которую используют большинство участников здесь, или Debian, на котором теперь основан контейнер Docker для Discourse.

Спасибо за ответ.

Мы полностью это понимаем, но если бы переход на Ubuntu был настолько простым, мы бы уже это сделали.
Подскажите, где можно найти информацию о тегах Docker и версиях Discourse для выполнения обновления?

Спасибо.

Вам в любом случае потребуется запускать более новое ядро, прежде чем вы сможете запустить значительно более новую версию Discourse.

Думаю, вам нужен Docker 28? Хотя, возможно, хватит и версии 26.

Похоже, что обновить CentOS 7 невозможно, поэтому вам придётся перенести всё на новую виртуальную машину. Если же это ваш собственный сервер, то нужно установить новую операционную систему для обновления. Раз вы уже устанавливаете ОС, то выбор любой другой Linux-системы не станет ни проще, ни сложнее.

Если вы не хотите обновлять операционную систему, то и Discourse обновлять не стоит.

Я вижу, что существуют открытые альтернативы CentOS, и AlmaLinux выглядит сильным претендентом — CERN выбрал именно его, а они знают, что делают. Это дистрибутив семейства Red Hat, поэтому ваши навыки системного администратора будут применимы.

Я не уверен, что вы сможете решить свою проблему, просто выбрав подходящий образ Docker. Процессы, работающие внутри Docker, используют то же ядро, что и все остальные, и, как мне кажется, версия ядра — именно версия, а не уровень патчей — должна быть новее той, что у вас есть.

Я поддерживаю идею о том, что лучший подход — развернуть новый сервер с новой ОС и восстановить резервную копию Discourse.