Hmm thanks everyone so far.
Here’s where I am at.
I don’t know why when I originally set up this OS I installed a 32bit version of Ubuntu server (it’s been a while!) but it seems like that is what I did and that’s why I couldn’t install the 64 bit arm version of mysql8. And there isn’t a 32 bit version, so that’s how I ended up with the third party docker image for mariadb - it was the best I could do at the time. I remember that, I don’t know why I didn’t think to see if it was because I had a 32 bit os, but here we are.
In figuring this out, I pulled the latest version of the docker images, and that seems to have hosed what I had - the ghost image won’t start because the mariadb image has a maintenance lock on a db upgrade. The last one I can see in the db table for locks is 5.81, but I think there is supposed to be 5.82.
The docker logs on the ghost image say:
[2024-04-25 23:54:03] INFO Ghost is running in production…
[2024-04-25 23:54:03] INFO Your site is now available on http://localhost:2368/
[2024-04-25 23:54:03] INFO Ctrl+C to shut down
[2024-04-25 23:54:03] INFO Ghost server started in 2.484s
[2024-04-25 23:54:03] ERROR Migration lock was never released or currently a migration is running.
Migration lock was never released or currently a migration is running.
“If you are sure no migration is running, check your data and if your database is in a broken state, you could run yarn knex-migrator rollback
.”
Error ID:
500
MigrationsAreLockedError: Migration lock was never released or currently a migration is running.
at /var/lib/ghost/versions/5.82.2/node_modules/knex-migrator/lib/locking.js:62:23
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/5.82.2/core/server/data/db/DatabaseStateManager.js:40:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/5.82.2/core/server/data/db/DatabaseStateManager.js:73:25)
at async initDatabase (/var/lib/ghost/versions/5.82.2/core/boot.js:69:5)
at async bootGhost (/var/lib/ghost/versions/5.82.2/core/boot.js:523:9)
[2024-04-25 23:54:03] WARN Ghost is shutting down
[2024-04-25 23:54:03] WARN Ghost has shut down
[2024-04-25 23:54:03] WARN Your site is now offline
[2024-04-25 23:54:03] WARN Ghost was running for a few seconds
Because the ghost image crashes so fast, I can’t attach a terminal to run the suggested recovery commands.
So now I am going to see if I can rebuild the system with the right OS and then with the right mysql image. I am not worried about the data, that was all dev tests. My scripts and themes are in git repos, so I can push them up to github and pull them down on the new system. A pain to rebuild the enviroment, but seems like I will be fine.
Then I can test the timing of the api again qnd bring the info back here. Probably next week sometime on that. I got a shiny new ssd drive to replace the sd card, so hopefully that will work. Who knows, maybe mariadb just didn’t like the sd card. It was destined to be replaced anyway. So we will see.
If you have any feedback on recovering that db, I am interested why it didn’t succeed. Maybe that’s worth a separate report?
Stay tuned