Enterprise Collaboration with Liferay
The Way of the Ray

© Alex Timaios, Fotolia
Liferay is a powerful and easily customizable CMS that is ideal for community collaboration – once you get it configured.
Users on business networks often struggle to get increasingly heterogeneous infrastructures to work seamlessly. As proprietary software loses market share to more open technologies, infrastructure administrators must find ways to preserve ease of use across increasingly differing platforms. In addition to interoperability problems, each company must move forward to more collaborative environments in order to remain competitive and make the best use of its greatest (and largely untapped) asset – the ideas of its employees.
The Liferay CMS has been around for years and it keeps getting bigger and better. Many companies have implemented Liferay to address a whole spectrum of needs. From an e-commerce platform to a collaborative intranet portal, Liferay has the scalability and functionality built-in to deploy quickly and grow as the needs of the company grow.
Liferay Portal (Figure 1) provides your organization with a powerful portal for creating and managing content pages, message boards, and other collaboration tools. The Liferay CMS is not a 'silver bullet' that will solve every systematic transparency, communication, and collaboration issue for every company, but in my experience, Liferay is just about the best portal/content management system out there and a superb foundation for unifying and simplifying company communication.
The Liferay CMS comes with a large number of useful portlets – ready-made tools that let you tailor your Liferay site to the needs of your organization. But more importantly, Liferay makes it easy to bring together many different systems in one place. Departments can arrange and rearrange content in their own web space, relieving the sys admin from the duties of posting and arranging content for everyone in the organization.
So, why isn't everyone using Liferay? It is big, it is Java, and the documentation is a little intimidating. At more than 86MB (bundled with Tomcat), Liferay is one of the larger CMS packages out there. Because it is written in Java, extensibility might require some extra attention. Liferay has a steeper learning curve than the traditional CMS running on a LAMP box. The "Getting Started" documentation is easy enough to find, but because of the size of the Liferay project and the variety of configuration options, digesting it and getting started quickly is a daunting task.
Liferay supports a variety of complex configuration scenarios. In a typical scenario, a company might need an intranet site for all departments to contribute to, but access controls are necessary for preventing salespeople from rooting around in accounting's private documents and keeping HR from dropping new hire documentation in the middle of IT's web space. Different departments can use different aspects of Liferay for different things. The company will make use of the Iframe Portlet or the Web Proxy portlet to bring the web-management interfaces of several different systems like Nagios, Hobbit, or MRTG together under one roof.
The Message Boards portlet serves as a very basic help desk. Human Resources will use the Document Library portlet to post policy manuals. Sales and Marketing departments will use the Web Proxy portlet to pull in a sales dashboard report from the CRM system and the portlets related to Liferay's Journal Content portlet to store and disseminate press releases and information about product promotions.
Because Tomcat will not run on port 80 without root privileges, the configuration described in this article uses Apache HTTP server and mod_jk to serve Liferay on port 80 and allow for vhosting with other web-based applications existing on the same machine. Liferay comes set up to use a Hypersonic database, but this configuration doesn't work well for production use. In this example, I will use MySQL as the production database.
Getting Ready
When you set up your Linux computer, make sure the system includes development tools, development libraries, and MySQL. Unless you need it, get rid of the GUI. If you decide to use the software firewall, make sure you leave ports 22, 80, and 8080 open. When the testing is complete, 8080 will be closed. If you are not familiar with manual firewall configuration, you can save some time by installing system-config-securitylevel.
Setting up MySQL
Your Liferay CMS will store and retrieve data from a back-end database system. In this case, configure the system so MySQL starts on boot. Enable the system with chkconfig mysqld on and check it with chkconfig --list mysqld. The numbers represent runlevels. The last command should produce output that indicates mysqld is set to run on runlevels 2,3,4, and 5. Log in to MySQL and create the Liferay database:
mysql -u root -p enter the password at the prompt create database lportal
Next, create the Liferay user account and give it all privileges on lportal.*.
Infrastructure
The Liferay configuration described in this article requires Apache, Tomcat, and MySQL. Depending on your Linux distro, some of these components might already be running on your system, or you might have the option of setting up the component through your distro's package management system. Compatibility of the specific versions may vary. Alternatively, you can install the components from source code.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Find SysAdmin Jobs
News
-
MNT Seeks Financial Backing for New Seven-Inch Linux Laptop
MNT Pocket Reform is a tiny laptop that is modular, upgradable, recyclable, reusable, and ships with Debian Linux.
-
Ubuntu Flatpak Remix Adds Flatpak Support Preinstalled
If you're looking for a version of Ubuntu that includes Flatpak support out of the box, there's one clear option.
-
Gnome 44 Release Candidate Now Available
The Gnome 44 release candidate has officially arrived and adds a few changes into the mix.
-
Flathub Vying to Become the Standard Linux App Store
If the Flathub team has any say in the matter, their product will become the default tool for installing Linux apps in 2023.
-
Debian 12 to Ship with KDE Plasma 5.27
The Debian development team has shifted to the latest version of KDE for their testing branch.
-
Planet Computers Launches ARM-based Linux Desktop PCs
The firm that originally released a line of mobile keyboards has taken a different direction and has developed a new line of out-of-the-box mini Linux desktop computers.
-
Ubuntu No Longer Shipping with Flatpak
In a move that probably won’t come as a shock to many, Ubuntu and all of its official spins will no longer ship with Flatpak installed.
-
openSUSE Leap 15.5 Beta Now Available
The final version of the Leap 15 series of openSUSE is available for beta testing and offers only new software versions.
-
Linux Kernel 6.2 Released with New Hardware Support
Find out what's new in the most recent release from Linus Torvalds and the Linux kernel team.
-
Kubuntu Focus Team Releases New Mini Desktop
The team behind Kubuntu Focus has released a new NX GEN 2 mini desktop PC powered by Linux.