Мой сайт постоянно недоступен

ошибка сервера
при попытке загрузить /latest.json?ascending=false
Код ошибки: 500 error

Эта страница не работает www.dexforum.com.br в данный момент не может обработать этот запрос.
HTTP 500 ERROR

Почему это происходит? Как решить?


В вашем сообщении об ошибке указано «No space left on device», а информация о системе показывает, что использовано 100,0 % из 49,29 ГБ.

Вам нужно увеличить размер вашего droplet или проверить, что именно занимает всё доступное пространство.

Я думал, что содержимое сайта автоматически удаляется с сервера. Как мне узнать, что занимает столько места?

По ссылке Manually update Discourse and Docker image to latest есть полезная информация о том, как обслуживать ваш сервер.

Спасибо, что показал мне это пошагово, но когда я использую команду cd /var/discourse git pull ./launcher rebuild app, появляется следующее: Device "docker0" does not exist. Cannot connect to the docker daemon - verify it is running and you have access

Похоже, ваше приложение остановлено. Попробуйте выполнить ./launcher start app, и это должно восстановить предыдущую версию до пересборки.

cd /var/discourse
./launcher start app

Не запускайте ./launcher cleanup, если ваше приложение не запущено, иначе оно также будет удалено.

Произошла ещё одна ошибка, о боже, я даже не знал об этом

root@forummaisvc:/var/discourse# ./launcher start app
Устройство “docker0” не существует.
Не удалось подключиться к демону Docker — проверьте, что он запущен, и у вас есть доступ к нему.

Я использовал команду df -h. Что можно удалить? И какую команду нужно использовать для удаления конкретного элемента?

Попробуйте:

cd /var/discourse
./launcher restart app

Мне возвращается это =(

Джим по-прежнему прав…
Попробуйте выполнить sudo apt autoremove --purge, затем sudo systemctl start docker и .\launcher start app, а после этого, возможно, .\launcher cleanup (предварительно сделав резервную копию).

Я попробовал эти коды, которые вы мне дали, но они вызывают ошибки! Не знаю, что еще делать, мой форум уже несколько дней не работает, я в отчаянии!

Я всегда немного нервничаю, предлагая удалить что-то для освобождения места. Есть ли простое пошаговое руководство для начинающих, чтобы найти лишние резервные копии или «осиротевшие» изображения?

Даже места недостаточно для apt autoremove :fearful:

Да, при соблюдении пропорций я чувствую себя немного как

возможно, сначала выполните sudo apt autoclean
а для пары килобайт — sudo find /var/log -type f -iname *.gz -delete
затем снова попробуйте sudo apt autoremove
и наконец sudo systemctl start docker
sudo /var/discourse/./launcher start app
sudo /var/discourse/./launcher cleanup

Что такое Docker Daemon? Как его установить? @Benjamin_D @JammyDodger

Боюсь, что у вас сейчас недостаточно места для запуска Docker, который вам понадобится для выполнения команды ./launcher cleanup (это предпочтительный способ очистки старых контейнеров и образов, оставшихся после предыдущих обновлений). В идеале, ваш сайт должен быть запущен (./launcher start app) перед выполнением этой команды, чтобы у вас был запасной вариант на случай, если что-то пойдет не так во время обновления.

У меня еще не было сайта, заполненного на 100%, поэтому мне не совсем понятно, что может или не может сработать (например, невозможность запуска autoclean и autoremove). @Benjamin_D, знаете ли вы, возможно ли вручную удалить некоторые файлы, чтобы освободить немного места и начать процесс? Например:

cd /var/discourse/shared/standalone/backups/default dir

Скопируйте имя самого старого файла, а затем используйте команду для его удаления, например:

rm jammydodger-s-test-site-2022-04-12-033748-v20220407195246.tar.gz

Или, возможно, проверьте наличие orphaned-образов и удалите один или несколько из них:

docker images

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

Я думаю, что стоит начать с логов, прежде чем переходить к чему-то более «связанному с приложением»

sudo journalctl --rotate
sudo journalctl --vacuum-time=1s

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

systemctl status docker

Я нашел тему с похожей проблемой:

@JammyDodger @Benjamin_D

Спасибо за помощь и ответы!

Я думал, что Discourse автоматически удаляет файлы!

Как посмотреть, какие файлы занимают место в хранилище? И какие файлы можно удалить?

Нужно ли делать это через команду или можно зайти в настройки форума?