I am trying to only do this from the Cloudron hosted versions of Metabase/Grafana.
I followed your instructions and this worked perfectly, took the username, password, port, host, and database name from the environment variables within the Wekan web console, entered them in Metabase, and was able to connect and see the data.
@jamesgallagher and @atrilahiji Yeah, I've run across maybe two or three apps recently that use PouchDB, which needs a public instance of CouchDB in order to sync their data. I have no idea if we should package CouchDB for cloudron as an app, but it sure seems like it could be useful.
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).
Admin credentials for mongo are really internal/implementation details. In general, do not make configuration changes to the mongodb instance because it may not work across all apps. This is the reason why all the databases are "locked" down and not exposed to users for easy access.
That warning said, you can do docker inspect mongodb | grep CLOUDRON_MONGODB_ROOT_PASSWORD to get the root password.