Как починить Облачную ОС если Raspberry Pi долго не запускалась

Если у вас Raspberry Pi долго не включалась (была долгое время выключена), то у вас может просрочится сертификат.

Эту инструкцию нужно выполнять на главной ноде.

Пример ошибки, которую можно посмотреть командой sudo journalctl -u docker -r

msg="swarm component could not be started" error="error while loading TLS certificate in /var/lib/docker/swarm/certificates/swarm-node.crt: certificate

Для начала получите список всех последних запусков системы:

journalctl --list-boots

Например, последний запуск распы был 2022-10-04 19:13:33. Вам нужно выполнить скрипт, и увеличивать дату каждый 2 месяца, пока не дойдете до текущей даты.

Например:

sudo ./time-fix.sh set-date '2022-10-05 00:00:00'
sudo ./time-fix.sh set-date '2023-01-01 00:00:00'
sudo ./time-fix.sh set-date '2023-02-01 00:00:00'
sudo ./time-fix.sh set-date '2023-04-01 00:00:00'
sudo ./time-fix.sh set-date '2023-06-01 00:00:00'
sudo ./time-fix.sh set-date '2023-08-01 00:00:00'
sudo ./time-fix.sh restore
./cloud_os.sh compose
sudo reboot

Чтобы посмотреть информацию о сертификате и времени когда он истечет нужно выполнить команду:

sudo openssl x509 -in /var/lib/docker/swarm/certificates/swarm-node.crt -text -noout

Потом этот файл нужно скопировать на другие ноды и перезапустить их.