Note: Though this works for me, unattended installation is not a tested and supported use of the Alfresco installers.
With the release of Alfresco 3.3.3, Alfresco started using Bitrock installers for both their Community and Enterprise products. The logic is that using Bitrock’s proven technology will reduce problems with the installation process. Also, the Bitrock installers promise to be more flexible than the previous binary installers, and thereby will hopefully allowing Engineering to trim the number and types of distribution packages that need to be tested as part of a release. This should reduce the potential for problems to arise as part of the packaging process.
Specifically, Alfresco has deprecated the previously popular Tomcat bundles
because the new installers can produce a very similar install with the use of the
unattended mode or with an option file. Just call the installer with the
--optionfile <file_name> flag and give it a file containing something similar to this example:
mode=unattended enable-components=alfresco,alfrescosharepoint,alfrescorm,alfrescowcmqs disable-components=alfrescowcm,alfrescoquickr,openofficecomponent # Install location prefix=/opt/alfresco_demo alfresco_admin_password=admin # Don't install Tomcat #tomcat_installation_type=existing # If embedded MySQL is being used, then a password must be specified # or user input will be required #mysql_password=aaa mysql_installation_type=existing # Use JDBC settings for an existing database jdbc_url=jdbc:mysql://localhost/alfresco jdbc_driver=org.gjt.mm.mysql.Driver jdbc_database=alfresco_demo jdbc_username=alfresco_demo jdbc_password=alfresco_demo # Don't install init scripts baseunixservice_install_as_service=0
This example will produce an installation very similar to what the Tomcat bundles provided.
Any setting available through the GUI should be available to an option file like
this one. You can get a list by calling the installer’s
--help switch. The
switches documented by
--help can also be called from the command line, making
it easy to script nice automated installations.
An example of calling the 3.4 RC1 installer with this option file (saved as install_opts) would look like this:
./alfresco-enterprise-3.4.0RC1-installer-linux-x64.bin --optionfile install_opts
The new installers contain a lot more of Alfresco’s dependencies, which should make installing Alfresco much easier. If you have ever been annoyed while compiling your own install of SWFTools for RedHat, you will appreciate this change. Unfortunately, the trade-off is that the installers are much bigger than they were.
Many Linux system administrators are suspicious of a packaged installer because it is impossible to tell upfront what the installer will do to the system. This is the great advantage to distributing an RPM, DEB, or TGZ; the package manager makes it easy to back out an RPM or DEB, and one can examine the TGZ before giving it permission to do anything. Because Alfresco includes many different services, we recommend it be installed on its own machine where it doesn’t have to compete against existing software for open ports and system resources. However, our installers are pretty reasonable in what they will touch on your system. They confine their activities to the installation directory, and only go out of it to optionally install startup scripts or services. (One day I would like to see Alfresco writing its log files in /var/log as well.) The binary installer also provides a reliable uninstaller. If you want more control over exactly how Alfresco interacts with your system, we recommend you install into an application server of your choosing using the WAR or EAR bundles.
These installers are new, and there are still some kinks to be worked out. Most issues that I am aware of will be resolved with the final release of Alfresco Enterprise 3.4. Issue ALF-6295 (Bundled MySQL gets installed incorrectly) is scheduled for the first service pack to 3.4.
You should be aware of these two additional issues that are not scheduled to be immediately fixed (due to effort required):
- ALF-2999: JVM is always installed, extra parts of SWFTools and ImageMagick are installed.
- ALF-5623: Trying to use an existing MySQL database through the GUI is confusing.
Remember that the installers are optimized for evaluation installations. You should configure the software for your use case before using it in production. Of course, Alfresco Enterprise support or a certified Alfresco Partner can help you do that.
Full disclosure: I work for Alfresco.
Lots of bugs were fixed in 3.4.1. This is my new option file for a minimal install:
mode=unattended enable-components=alfresco,alfrescosharepoint,alfrescorm,alfrescowcmqs disable-components=javaalfresco,openofficecomponent,postgres,alfrescowcm,alfrescoquickr # Install location prefix=/opt/alfresco_demo alfresco_admin_password=admin # Don't install Tomcat tomcat_installation_type=existing # Don't install init scripts baseunixservice_install_as_service=0