I first deployed my Rails 7.0 app in January, with Sqlite.
In July I manually did the migration to the V2 Platform.
In August the App started running out of memory and crashed, so I increased the system memory.
I’ve deployed the app succesfully having upgraded to Rails 220.127.116.11
My Sqlite database is mounted in fly.tom like so:
[[mounts]] source = "recipe_data" destination = "/mnt/recipe_data"
About a week ago I added Litestack to the Rails app. The App deployed to fly.
Failing to redeploy app
Today I’ve upgraded the app to Rails 7.1.2 and everything works locally. When I run fly deploy I get the follwoing error.
“Error: timeout reached waiting for health checks to pass for machine 148…”
WARNING The app is not listening on the expected address
fly machine status 148..... and
fly doctor are all good.
bundle add dockerfile-rails to the project and generated a new Dockerfile.
When I try to deploy with the new Dockerfile it fails with:
Errno::EACCES: Permission denied @ dir_s_mkdir - /mnt/recipe_data
When I try giving permissions to /mnt/recipe_data in the Dockerfile build process, I get an error that the file doesn’t exist.
Lastly I tried updating fly.toml, all to no avail
[[mounts]] source = "recipe_data" destination = "/data"
The article by Brad Gessler Sqlite & Rails in Production · The Ruby Dispatch suggests states that fly adds this volume configuration to the
[[mounts]] source = "data" destination = "/data"
However, I had already have my Sqlite databse at
Help: How can I deploy the Rails 7.1.2 version. How do I have to update the Dockerfile to keep using my exisiting Database?