One other note, the .sql file originally failed to upload due to the dump having the following line:
Create SCHEMA public;
I commented that out and the import ran fine. I'm guessing there is a command to dump the Postgres DB without a create statement but someone smarter than me probably knows it. I haven't used Postgres a day in my life until yesterday so I'm still getting to know it. I have only used MySQL, Maria and MS SQL and all of those have an option to dump without the create statement, but I figured it was just easier to comment that line out of the SQL file instead of looking up the command and doing a new dump.
Crux of the issue is that the indices name generated are too long. @alex-adestech pointed out to me that this issue only sorted out in MongoDB 4.4 and not even MongoDB 4.2. Searching through the rocket.chat issue tracker I saw only person hit this and nobody replied. Search further, I found that Rocket.Chat doesn't even support MongoDB 4.2. The releases page mentions the versions they test with - https://github.com/RocketChat/Rocket.Chat/releases. This got me wondering why we hit this issue. Well, the answer it turns out is that Cloudron generates 32 byte mongodb database names for apps. This in turn ends up affecting the length of the index.
I have made a fix now for Cloudron 5.6 that generates shorter names. (We have had to do something similar for apps using MySQL as well in the past).
Never used Git, will keep that in mind for reporting any issues that I might come across with Cloudron apps!
Now that I know that shared volumes is what I'm after 😜 (I thought it might be different somehow if it was a specific permission for an app to read data outside of it's docker container), how can I set up and use a shared volume if it's not exposed on the interface? Or is this something that's not trivial and best left alone till it's stably implemented?
BTW, for the "dot" thing, the mailbox separator in Cloudron is ".". This is why folders with dot don't work. If you create a folder named "foo.bar.baz", it is like subfolder bar under foo and subfolder baz under bar.
While using "." as a seperator is not a bug as such, using "/" as a separator instead of "." would have been a better choice for Cloudron but we didn't know this when we started (sadly, "." is the dovecot default too). And also using "/" as separator is required for mailbox sharing to work. We are slowly working towards moving the separator to be "/", step by step.