When you say "hosted with another company", I hope you mean just the registrar is another company.
I'm not familiar with Joomla but with other packages the technique is to install the software at a level "above" the actual domains. Example: Your space is at /home/yourusername. Your websites are under this:
Create a new directory there, something like:
I personally have been trying to shift to something like this (it's close but not quite what I want yet):
Under each of those you can install specific packages for testing or production:
Structuring the directories like this allow these benefits:
- It allows me to put all software under a single apps path - and that keeps /home/user from getting cluttered.
- I can do testing without affecting the live site (I use subdomains to differentiate test from live). With Drupal, for example as seen above, I have a complete installation for testing a single release. With Wordpress I might just want one testing environment and one production environment.
- It allows me to have as many domains as I want in the DH package, some using different combinations of the various packages. Drupal 6.3 with Wordpress or a site without Drupal and an older version of Wordpress.
- Organizing under apps by package type helps to keep everything organized. Personally I find myself creating lots of directories for backups for modules or site data, etc., and it's a real mess if blog data is somehow lumped in the same directory as forum data.
- Updating the software is much easier because the software itself is updated once but each site just needs to activate/recognize the updates.
So after installing software in some organized fashion, you have a home page under each domain that points to some small subset of the software available. There's no need to keep a complete Joomla installation for every domain. I use Drupal and not Joomla, but I know all of these packages have a configuration page where you provide the path to the site homepage and the path to the software. That's the bridge that allows you to do all of this.
When doing this sort of thing, you will want to create separate databases for all domains, and usually for each package. Sure, you can have a single database for package X and the tables in the database can be named X_1, X_2, etc, but "too many eggs in one basket" comes to mind and you don't want one domain to suffer if the database for another gets trashed. One of the main reasons I'm with DH is that we can have an unlimited number of databases. If you need to link the domains, like allow users here to login there with the same ID, that's a completely separate effort.
It's helpful if you can share files across domains, like using a single directory full of avatars for the CMS and for a forum. In this case, put the data somewhere neutral and have each domain soft-link (ln -s) to the common directory.
Some packages have hooks specifically for multi-site operations. Sorry, but again I have no Joomla experience but since it's one of the top packages I expect it has something like this.