cancel
Showing results for 
Search instead for 
Did you mean: 

Multideveloper Alfresco development environment

dmakovey
Champ in-the-making
Champ in-the-making
Hi,

we're facing an interesting challenge, some of out developers do not want to use their desktop for development, so they request their "personal" Alfresco instance. Is there any standardized approach to this?

For example when dealing with PHP apps - it's easy - we configure apache to allow "user home" directories and developers drop code in various sub-directories of their $HOME which then renders easily under http://some.host.com/~devel1/phpapp/

however I am not entirely convinced I can do something like this with Alfresco - no pointers from web searching kind of make me worried.

Is it viable to deploy several alfresco code instances on machine (different directories), configure tomcat's context to use them as /alf-devel1 and /alf-devel2, … etc. ?

Hints, ideas, shared experience?
6 REPLIES 6

mrogers
Star Contributor
Star Contributor
While its entirely possible to install multiple instances of Alfresco on a single machine, its not that easy.     The alfresco server is actually lots of different servers.   (for example an ftp server, a http server, an imap server, smtp server and a cifs server.  each of which expects to use "the well known network ports"    While its possible to shift all the networking around its not as easy as it should be.  By far the easiest solution is to have one instance for each developer's machine.

You can probably set up different instances on a VM for each developer.

It depends upon what sort of code is being developed.  You may well be able to share a "development" server.

dmakovey
Champ in-the-making
Champ in-the-making
We are not using FTP/NFS or CIFS protocols as well as SMTP. The only access protocol we use right now (especially for developers) is HTTP (webdav for bulk transfers of data). Does it mean that having several instances (of possibly different code) is possible? What about "shared" directory with config files (tomcat6/shared/classes/alfresco…) ? I'm probably getting more into plain tomcat configuration territory, but considering that it is very much related to Alfresco I figured I'd ask here  :wink:

mrogers
Star Contributor
Star Contributor
Yes, as I said at the start of my response it is possible.

dmakovey
Champ in-the-making
Champ in-the-making
Yes, as I said at the start of my response it is possible.

I should rephrase my last question then: **how** do I "partition" tomcat6/shared/… ? I am not exactly clear about that part would I just drop stuff there according to tomcat context names? I.e. if contexts are "/devel1" and "/devel2" then I create tomcat6/shared/classes/devel1 and tomcat6/shared/classes/devel2 respectively?

I just don't want to go on a wild goose chase before I know a bit more about wild goose behavior

mrogers
Star Contributor
Star Contributor
You would run each separate instance of alfresco in its own instance of tomcat.   (so you have developer1/tomcat6/shared etc)

You need to set up a separate database schema for each developer.
You need to configure alfresco to use the correct database schema.
And you need to make sure all of the networking ports don't clash with each other.

gronfelt
Champ in-the-making
Champ in-the-making
There's a wiki page on port numbers that might be useful:

http://wiki.alfresco.com/wiki/Port_numbers

(It's a bit outdated, since it references the file custom-repository.properties which is now replaced by alfresco-global.properties, but other than that I think it's still valid)

Beware though, that it's not as simple as just changing port numbers in the Tomcat config, the port number 8080 is referenced in lots of files throughout the system and tracking them down might not be that simple. I would recommend to virtualize the servers instead, if there's not a really good reason not to do that.