By default kamal doesn't allow writing to the public dir. I recommend changing the default dir to something writable when using the default dockerfile and kamal.
config.action_controller.page_cache_directory = Rails.root.join("tmp", "cached_pages")
Workds better.