I would like to provide our customers accesses to our confluence instance,
However I would like to provide them limited access, and if possible even to separate the database and build them a separate domain
Can you please let me know what is most recommended way to do it?
You don't do it with separation like this.
Confluence has one database. You might do clever things in the background with servers, database schemas and so-on, but whatever you do with that, Confluence reads and writes from/to one single data source.
The "domain" is even more simple. When you use Confluence, it has a "base url" which is the domain and (optionally) a path with in the domain. It has one base url, no more, and no less. There's no way to put it multiple domains because it uses a single domain.
Now, that said, you have a LOT of control within the application. Put your customers into the "can log in" group (usually confluence-users) and then add them to the Space(s) you want them to have access to. Do not add them to the Space(s) they should not have access to. You will probably need to check over the usage of "contluence users" to make sure it's not letting the wrong people into Spaces it shouldn't, but once you've done that, there's not much else needed.
Do you use templates with Confluence? Take part in a remote 1-hr workshop. You'll receive USD $100 for your time! We're looking for people to participate in a remote 1-hr workshop...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs