./launcher rebuild app ошибка: сбой bootstrap с кодом выхода 125

Здравствуйте,

У меня возникла проблема: я не могу пересобрать Discourse командой “./launcher rebuild app”, и при запуске команды “docker ps” контейнер Discourse не отображается. Однако я всё ещё могу получить доступ к Discourse через веб-интерфейс без каких-либо проблем. Как это возможно?

Вот ошибки, которые я получаю при запуске команды “./launcher rebuild app”:

docker: Error response from daemon: error while creating mount source path '/var/discourse/shared/standalone': mkdir /var/discourse: read-only file system.
bootstrap failed with exit code 125
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
f15514ef40f8a25134126ee1c0c7771c60081ce8a8f2f6384be73cbbca7a3d12

Результат команды docker ps:

CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

Я хочу пересобрать Discourse, чтобы использовать его с HTTPS на этот раз, а также с Let’s Encrypt.
Спасибо за помощь.

Вам нужно искать ошибки глубоко в логах или консоли. Возможно, вы внесли незавершённое изменение для HTTPS. Попробуйте откатить его, чтобы всё снова заработало.

Это одна из проблем.

Возможно, вы не вошли как root?

Возможно, вы находитесь не на том сервере?

В обычном режиме работы launcher.sh контейнеры Docker останавливаются перед их пересборкой, поэтому, если сборка не удаётся, они могут отсутствовать (не уверен, пытается ли laufering запустить старые контейнеры в качестве шага восстановления?). (Кажется, есть режим с уменьшенным временем простоя — в нём контейнеры останавливаются только после пересборки; неясно, почему этот режим не является режимом по умолчанию, ведь он помог бы избежать подобных нарушений целостности.)

Это не объясняет, почему вы всё ещё видите Discourse, однако Discourse какое-то время работает в офлайн-режиме довольно незаметно :slight_smile:

Здравствуйте,
Извините за поздний ответ.
Я следовал инструкции по настройке HTTPS с использованием Let’s Encrypt: Set up HTTPS support with Let's Encrypt.

Ранее я следовал видеоинструкции (https://www.youtube.com/watch?v=EaUIsIYivE8) для установки Discourse через HTTP (не HTTPS). В декабре я также опубликовал комментарий о том, как установить Discourse на Ubuntu с использованием HTTP на форуме: Issue with installation in an Ubuntu 22.04 VM - #11 by mrhassan60.

Я выполнил команду docker ps от имени пользователя root на сервере, где запущено приложение Discourse.
Затем я запустил команду ./discourse-doctor и получил другую ошибку с кодом 125:

Discourse version at forum.dauphine.media: NOT FOUND
Discourse version at localhost: NOT FOUND
Unable to find image 'local_discourse/app:latest' locally
docker: Error response from daemon: pull access denied for local_discourse/app, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
Discourse version at forum.dauphine.media: NOT FOUND
Discourse version at localhost: NOT FOUND

При этом Discourse работает уже два месяца.

Извините за мой плохой английский.

Я видел ещё один подобный отчёт. Возможно, вы находитесь в месте, где доступ к Docker может быть заблокирован?

Я использую команду docker run hello-world, если Docker работает и команда выполняется.

Привет от Docker!
Это сообщение показывает, что ваша установка, похоже, работает правильно.

попробуйте использовать “docker pull” вместо этого.

Я использовал команду docker pull local_discourse/app:latest, но получаю то же сообщение:
Error response from daemon: pull access denied for local_discourse/app, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

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

Теперь контейнер Discourse на новом сервере виден:

CONTAINER ID   IMAGE                 COMMAND        CREATED          STATUS          PORTS                                                                      NAMES
e42d24042375   local_discourse/app   "/sbin/boot"   25 minutes ago   Up 25 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   app