Installing Pluck CMS on Ubuntu 18.04 LTS

Pluck is an open-source, lightweight, and user-friendly content management system (CMS) that allows you to manage your website without any programming skills. Written in PHP, Pluck doesn’t require a database for data storage and offers a wide array of modules for enhanced functionality.

In this guide, you’ll learn how to install Pluck CMS on an Ubuntu 18.04 LTS (Bionic Beaver) server.

Prerequisites

  • An Ubuntu 18.04 server
  • A non-root user account with sudo privileges

Install Apache and PHP

To begin, install the Apache web server with the following command:

sudo apt-get install apache2 -y

Next, add the Ondrej repository to your system using:

sudo add-apt-repository --yes ppa:ondrej/php

Now, update your system and install PHP along with required libraries:

sudo apt-get update -y
sudo apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mysql php7.2-curl php7.2-opcache -y

After completing the package installation, start the Apache service and enable it to launch at startup:

sudo systemctl start apache2
sudo systemctl enable apache2

Install Pluck CMS

First, download the latest version of Pluck CMS by executing:

wget https://codeload.github.com/pluck-cms/pluck/zip/master

Once the download is complete, unzip the file with:

mv master master.zip
unzip master.zip

Move the extracted directory to Apache’s root directory:

sudo cp -r pluck-master /var/www/html/pluck

Then, set the appropriate permissions for the Pluck directory:

sudo chown -R www-data:www-data /var/www/html/pluck/
sudo chmod -R 755 /var/www/html/pluck/

Configure Apache for Pluck CMS

Create an Apache virtual host file for Pluck CMS with this command:

sudo nano /etc/apache2/sites-available/pluck.conf

Add the following configuration to the file:

<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html/pluck
    ServerName example.com

    <Directory /var/www/html/pluck/>
        Options FollowSymlinks
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/pluck_error.log
    CustomLog ${APACHE_LOG_DIR}/pluck_access.log combined

    </VirtualHost>

Save the file, then enable the site configuration:

sudo a2ensite pluck

Finally, restart Apache to apply your changes:

sudo systemctl restart apache2

Access Pluck CMS

Open your web browser and navigate to http://example.com. You should see the Pluck CMS installation page:

Pluck CMS web installer

Click start the installation to continue. Ensure the required directories are writable, then click Proceed:

Installation started

Set email and language

Provide your site title, email, and password, then click Save:

Create Homepage content

Next, enter your homepage title and description, and hit Save again:

Pluck installation successful

Finally, click on manage your website to access the login page:

Login to Pluck as administrator

Log in with your site credentials to access the Pluck CMS dashboard:

Pluck CMS dashboard

Useful Links

FAQ

1. What are the system requirements for Pluck CMS?

Pluck CMS requires a web server running PHP. It does not need a database, making it lightweight and easy to set up.

2. Can Pluck CMS be used on a shared hosting environment?

Yes, Pluck CMS is designed to work efficiently on shared hosting environments where database access might be limited.

3. Is it necessary to use the Ondrej repository?

While not strictly necessary, the Ondrej repository provides the latest PHP versions and libraries, which is helpful for ensuring compatibility and security.

4. How secure is Pluck CMS?

Security in Pluck CMS depends largely on keeping your PHP and Apache configurations up-to-date and following best practices, such as setting appropriate file permissions and using strong passwords.