How To Install Apache Tomcat 8 on Ubuntu 16.04

Install Apache Tomcat 8 on Ubuntu 16

Apache Tomcat is an open source web server and servlet container developed by the Apache Software Foundation. It implements the Java Servlet, JavaServer Pages (JSP), Java Unified Expression Language and Java WebSocket specifications from Sun Microsystems and provides a web server environment for Java code to run in.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Apache Tomcat 8 on a Ubuntu 16.04 LTS (Xenial Xerus) server.

Install Apache Tomcat 8 on Ubuntu 16.04

Step 1. Installing Java (JRE or JDK).

Once you have verified if Java is installed or not, choose the type of Java installation that you want with one the following:

sudo apt-get install openjdk-7-jre
sudo apt-get install openjdk-7-jdk

Another alternative Java install is with Oracle JRE and JDK. However, we would need to install additional repositories for a proper installation:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java

Then, you will need to fully update the system with the following command and install it:

sudo apt-get update
sudo apt-get install oracle-java8-installer

Verify Installed Java Version.

java -version

Result:

java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)

Setup JAVA_HOME on Ubuntu 16.04.

Since many programs now days need a JAVA_HOME environment variable to work properly. We will need to find the appropriate path to make these changes. With the following command, you can view your installs and their path:

sudo update-alternatives --config java
sudo nano /etc/profile

Now that you are in the user profile file, add the following code, along with the Path of your installation from the previous step, to the bottom. ( Example: JAVA_HOME=”YOUR_PATH”):

export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.51-1.b16.el7_1.x86_64"

Reload the file so all your changes could take effect with the following command:

source /etc/profile

Verify that your implementations are correct with the following command:

echo $JAVA_HOME

Step 2. Installing Apache Tomcat.

First thing to do is to go to Apache Tomcat’s download page and download the latest stable version of Apache Tomcat, At the moment of writing this article it is version 8:

cd /opt
wget http://a.mbbsindia.com/tomcat/tomcat-8/v8.0.35/bin/apache-tomcat-8.0.35.zip
tar -xvf apache-tomcat-8.0.35.zip

Add tomcat user and group:

ln -s /opt/apache-tomcat-8.0.35 /opt/tomcat-latest
chown -hR tomcat8: /opt/tomcat-latest /opt/apache-tomcat-8.0.35

Step 3. Configure environment variables.

Before starting Tomcat, configure CATALINA_HOME environment variable in your system using following commands.

# echo "export CATALINA_HOME=\"apache-tomcat-8.0.35\"" >> ~/.bashrc
# source ~/.bashrc

Step 4. Configure Tomcat to run as a service.

cd /opt/apache-tomcat-8.0.35/bin
./startup.sh

You will get the following output.

Using CATALINA_BASE:   /var/local/apache-tomcat-8.0.35
Using CATALINA_HOME:   /var/local/apache-tomcat-8.0.35
Using CATALINA_TMPDIR: /var/local/apache-tomcat-8.0.35/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /var/local/apache-tomcat-8.0.35/bin/bootstrap.jar:/var/local/apache-tomcat-8.0.35/bin/tomcat-juli.jar
Tomcat starte

You can verify the service running, by default tomcat runs on port no 8080.

[root@wpcademy ~]# netstat -antup | grep 8080
tcp        0      0 0.0.0.0:8080                0.0.0.0:*                   LISTEN
1
2
	
[root@wpcademy~]# netstat -antup | grep 8080
tcp       0     00.0.0.0:8080               0.0.0.0:*                  LISTEN

Step 5. Finally, open Tomcat from your browser, go to your IP or domain with the 8080 port (because Tomcat will always run on the 8080 port) as an example: mydomain.com:8080, replace mydomain.com with your IP or domain.

To shutdown Tomcat you can simply run the shutdown script in the same folder like this:

/opt/apache-tomcat-8.0.35/bin/shutdown.sh

Step 6. Setup user accounts.

Configure Tomcat users so they can access admin/manager sections. You can do this by adding the users in the conf/tomcat-users.xml file with your favorite text editor. Add this text to the file:

nano /opt/apache-tomcat-8.0.35/conf/server.xml

Place the following two lines just above the last line.

<!-- user manager can access only manager section -->
<role rolename="manager-gui" />
<user username="manager" password="_SECRET_PASSWORD_" roles="manager-gui" />

<!-- user admin can access manager and admin section both -->
<role rolename="admin-gui" />
<user username="admin" password="_SECRET_PASSWORD_" roles="manager-gui,admin-gui" />

Save and close the file when you are finished. To put our changes into effect, restart the Tomcat service:

systemctl restart tomcat

Congratulation’s! You have successfully installed Apache Tomcat. Thanks for using this tutorial for installing Apache Tomcat 8 in Ubuntu 16.04 LTS system. For additional help or useful information, we recommend you to check the official Apache Tomcat web site.

How To Install MySQL Server on Ubuntu 16.04

Install MySQL Server on Ubuntu 16

MySQL is a relational database management system (RDBMS) that runs as a server providing multi-user access to a number of databases. The MySQL source code is freely available because it was originally developed as freeware. MySQL is written in C and C++ and is compatible with all major operating systems. MySQL can be used for a variety of applications, but is most commonly found on web servers.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple. I will show you through the step by step installation MySQL server in Ubuntu 16.04 LTS (Xenial Xerus) server.

Install MySQL Server on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

apt-get update
apt-get upgrade

Step 2. Install MySQL server on Ubuntu 16.04 LTS (Xenial Xerus) server.

Installing MySQL is as simple as running just one command below, At the moment of writing this article it is version 5.7:

apt-get install mysql-server mysql-client

Once complete, you can verify MySQL is installed by running the below command:

systemctl status mysql
systemctl start mysql
systemctl status mysql

By default, MySQL is not hardened. You can secure MySQL using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MySQL:

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

To log into MySQL, use the following command (note that it’s the same command you would use to log into a MySQL database):

mysql -u root -p

One of the most important things when running MySQL on a production server is to get the most out of its performances. If you are a beginner and you do not know how to tune your MySQL server, you can start with a program called MySQLTuner. It will help you to analyze your server and to tune MySQL for better overall performances.

Congratulation’s! You have successfully installed MySQL. Thanks for using this tutorial for installing MySQL server in Ubuntu 16.04 LTS (Xenial Xerus) system. For additional help or useful information, we recommend you to check the official MySQL web site.

How To Install MariaDB on Ubuntu 16.04

Install MariaDB on Ubuntu 16

MariaDB is a an open source and cross-platform database engine and server, designed as a drop-in replacement for the well known and powerful MySQL database engine used on numerous web servers around the world. The application is geared toward database professionals that are in search of a scalable, robust, reliable and stable SQL server, a replacement for the MySQL database server.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple. I will show you through the step by step installation MariaDB on 16.04 LTS (Xenial Xerus) server.

Install MariaDB on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

apt-get update
apt-get upgrade

Step 2. Installing MariaDB.

Installing MariaDB is as simple as running just one command below:

apt-get install mariadb-server

If you want to install MariaDB 10.x Which is not included in distribution repository. We going to add MariaDB repo to our system:

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main

Once the key is imported and the repository added you can install MariaDB with:

apt-get update
apt-get install mariadb-server

Once complete, you can verify MariaDB is installed by running the below command:

systemctl start mariadb
systemctl status mariadb

Step 3. Securing MariaDB after installation.

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB:

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

To log into MariaDB, use the following command (note that it’s the same command you would use to log into a MySQL database):

mysql -u root -p

Congratulation’s! You have successfully installed MariaDB. Thanks for using this tutorial for installing MariaDB in Ubuntu 16.04 LTS (Xenial Xerus) system. For additional help or useful information, we recommend you to check the official MariaDB web site.

How To Install Let’s Encrypt SSL on Ubuntu With Apache

Install Let’s Encrypt SSL on Ubuntu With Apache

LetsEncrypt is a free open certificate authority (CA) that provides free certificates for websites and other services. The service, which is backed by the Electronic Frontier Foundation, Mozilla, Cisco Systems, and Akamai. Unfortunately, LetsEncrypt.org certificates currently have a 3 month lifetime. This means you’ll need to renew your certificate quarterly for now.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Let’s Encrypt SSL on a Ubuntu 16.04 LTS (Xenial Xerus) server.

Install Let’s Encrypt SSL on Ubuntu With Apache

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

apt-get update
apt-get upgrade
apt-get install git

Step 2. Install LAMP (Linux, Apache, MariaDB, PHP) server.

A Ubuntu 16.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here.

Step 3. Installing Let’s Encrypt SSL.

Next, run the commands below to clone Let’s Encrypt git project to your server and this will create a folder called letencrypt in the /opt directory:

git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt

Generating Let’s Encrypt certificates:

cd /opt/letsencrypt

Run the commands below to generate a SSL certificate for your domain (example.com) or website:

./letsencrypt-auto --apache -d example.com

You can also use a single certificate on multiple domains and sub-domains, to do that, you’ll have to add them as additional perimeters to the command:

./letsencrypt-auto --apache -d example.com -d www.example.com

After the installation process finishes successfully a congratulation message is displayed on your console informing you about the expiration date and how you can test the configuration as illustrated on the below screenshots and you should be able to find the generated certificate files at /etc/letsencrypt/live.

letsencrypt-ssl-generate

Finally, now your domain should be accessible via HTTPS! Check it out at https://yourdomain.com.

Step 4. Set up auto renewal Let’s Encrypt.

Let’s Encrypt certificates are valid for 3 month, but it’s recommended that you renew the certificates every 2 month to allow a margin of error. To renew that certificate, you’ll have to come back into the /opt/letsencrypt directory and run the commands below:

./letsencrypt-auto renew

Or you can also setup a cron job to automatically renew your certificate before it expires by editing cron and specifying how often you want to check/renew:

sudo crontab -e

Add the line below and save:

0 0 * * 0 /opt/letsencrypt/letsencrypt-auto renew >> /var/log/le-renew.log

Congratulation’s! You have successfully installed Let’s Encrypt SSL. Thanks for using this tutorial for installing Let’s Encrypt SSL with Apache on your Ubuntu 16.04 LTS (Xenial Xerus) system. For additional help or useful information, we recommend you to check the official LetsEncrypt SSL web site.

How To Install Mahara on Ubuntu 16.04

Install Mahara on Ubuntu 16

Mahara is a fully featured web application to build your electronic portfolio. You can upload files, create journals, embed social media resources from the web and collaborate with other users in groups.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Mahara on a Ubuntu 16.04 LTS (Xenial Xerus) server.

Install Mahara on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB, PHP) server.

A Ubuntu 16.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

apt-get install php5 php5-mysql php5-gd php5-curl libssh2-php

Step 3. Installing Mahara.

First thing to do is to go to Mahara’s download page and download the latest stable version of Mahara, At the moment of writing this article it is version 5:

wget https://launchpad.net/mahara/16.04/16.04.1/+download/mahara-16.04.1.zip

Unpack the Mahara archive to the document root directory on your server:

unzip mahara-16.04.1.zip
mv mahara-16.04.1 /var/www/html/mahara

Create Mahara’s upload directory:

mkdir /var/www/html/mahara/upload/

Next, create Mahara’s config.php. In the Mahara ‘htdocs’ directory there is config-dist.php file. Make a copy of this called config.php:

cd /var/www/html/mahara/htdocs/
cp config-dist.php config.php

Add the following lines:

### nano config.php

$cfg->dbtype = 'mysql';
$cfg->dbhost = 'localhost';
$cfg->dbport = null;
$cfg->dbname = 'mahara';
$cfg->dbuser = 'maharauser';
$cfg->dbpass = 'your-password';
$cfg->dataroot = '/var/www/html/mahara/upload/';

We will need to change some folders permissions:

chown -R www-data:www-data /var/www/html/mahara/

Step 4. Configuring MariaDB for Mahara.

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. You should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB.

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Next we will need to log in to the MariaDB console and create a database for the Mahara. Run the following command:

mysql -u root -p

This will prompt you for a password, so enter your MariaDB root password and hit Enter. Once you are logged in to your database server you need to create a database for Mahara installation:

MariaDB [(none)]> CREATE DATABASE mahara character set UTF8;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mahara.* TO 'maharauser'@'localhost' IDENTIFIED BY 'your-password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Step 5. Configuring Apache web server for Mahara.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘mahara.conf’ on your virtual server:

sudo a2enmod rewrite
touch /etc/apache2/sites-available/mahara.conf
ln -s /etc/apache2/sites-available/mahara.conf /etc/apache2/sites-enabled/mahara.conf
nano /etc/apache2/sites-available/mahara.conf

Add the following lines:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/mahara/htdocs/"
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory "/var/www/html/mahara/htdocs/">
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common
</VirtualHost>

Now, we can restart Apache web server so that the changes take place:

systemctl restart apache2.service

Step 6. Accessing Mahara.

Mahara will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://yourdomain.com or http://server-ip and complete the required the steps to finish the installation. If you are using a firewall, please open port 80 to enable access to the control panel.

Congratulation’s! You have successfully installed Mahara. Thanks for using this tutorial for installing Mahara open source e-commerce on your Ubuntu 16.04 LTS (Xenial Xerus) system. For additional help or useful information, we recommend you to check the official Mahara web site.

[youtube https://www.youtube.com/watch?v=VeS1iqQ6VIc]

How To Install Backdrop CMS on Ubuntu 16.04

Install Backdrop CMS on Ubuntu 16

Backdrop CMS is a full-featured content management system that allows non-technical users to manage a wide variety of content. It can be used to create all kinds of websites including blogs, image galleries, social networks, intranets, and more.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Backdrop CMS on an Ubuntu 16.04 LTS (Xenial Xerus) server.

Install Backdrop CMS on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB, PHP) server.

A Ubuntu 16.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

apt-get install php7.0 php7.0-cli php7.0-mbstring php7.0-mysql php7.0-gd php7.0-mcrypt libgd-tools php-pear

Step 3. Installing Backdrop CMS.

First thing to do is to go to Backdrop CMS’s download page and download the latest stable version of Backdrop CMS, At the moment of writing this article it is version 1.4.3:

wget https://github.com/backdrop/backdrop/releases/download/1.4.3/backdrop.zip

Unpack the Backdrop archive to the document root directory on your server:

unzip backdrop.zip
mkdir -p /var/www/html
mv backdrop /var/www/html

We will need to change some folders permissions:

chown -R www-data:www-data /var/www/html/backdrop/

Step 4. Configuring MariaDB for Backdrop CMS.

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. You should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB.

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Next we will need to log in to the MariaDB console and create a database for the Backdrop CMS. Run the following command:

mysql -u root -p

This will prompt you for a password, so enter your MariaDB root password and hit Enter. Once you are logged in to your database server you need to create a database for Backdrop CMS installation:

MariaDB [(none)]> CREATE DATABASE backdropdb character set UTF8;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mahara.* TO 'backdropuser'@'localhost' IDENTIFIED BY 'your-password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Step 5. Configuring Apache web server for Backdrop CMS.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘backdrop.conf’ on your virtual server:

sudo a2enmod rewrite
touch /etc/apache2/sites-available/backdrop.conf
ln -s /etc/apache2/sites-available/backdrop.conf /etc/apache2/sites-enabled/backdrop.conf
nano /etc/apache2/sites-available/backdrop.conf

Add the following lines:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/backdrop/"
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory "/var/www/html/backdrop/">
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common
</VirtualHost>

Now, we can restart Apache web server so that the changes take place:

systemctl restart apache2.service

Step 6. Accessing Backdrop content management system.

Backdrop CMS will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://yourdomain.com or http://server-ip and complete the required the steps to finish the installation. If you are using a firewall, please open port 80 to enable access to the control panel.

Congratulation’s! You have successfully installed Backdrop CMS. Thanks for using this tutorial for installing Backdrop CMS (content management system) on your Ubuntu 16.04 LTS (Xenial Xerus) system. For additional help or useful information, we recommend you to check the official Backdrop CMS web site.

[youtube https://www.youtube.com/watch?v=aRgG1k8HKoU]

You Might Also Like: How To Install October CMS on Ubuntu 16.04

How To Install Pip on Ubuntu 16.04

Install Pip on Ubuntu 16

The Pip command is a tool for installing and managing Python packages, such as those found in the Python Package Index. With the help of pip you can also install the package of particular version. Most importantly pip has a feature to manage full lists of packages and corresponding version numbers, possible through a “requirements” file. It performs the same basic job as easy_install, but with some extra features.

Install Pip on Ubuntu 16.04

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Pip Python on a Ubuntu 16.04 LTS (Xenial Xerus) server.

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Installing Pip.

Install the pip by using apt-get command:

apt-get install python-pip

Once the installation is completed you can verify that it was successful by using the following command:

pip -V

Step 3. How to use pip command.

After installing python-pip package, the pip command will be available on system. There are multiple options available with pip command:

To install new python package type:

pip install packageName

To uninstall python package installed by pip type:

pip uninstall packageName

To search python package type:

pip search packageName

For more Pip options and usage examples you can use the –help flag:

[[email protected] ~]# pip --help


Usage:
pip <command></command> [options]

Commands:
install Install packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
list List installed packages.
show Show information about installed packages.
search Search PyPI for packages.
wheel Build wheels from your requirements.
zip DEPRECATED. Zip individual packages.
unzip DEPRECATED. Unzip individual packages.
bundle DEPRECATED. Create pybundles.
help Show help for commands.

General Options:
-h, --help Show help.
-v, --verbose Give more output. Option is additive, and can be used up to 3 times.
-V, --version Show version and exit.
-q, --quiet Give less output.
--log-file Path to a verbose non-appending log, that only logs failures. This
log is active by default at /home/sharad/.pip/pip.log.
--log Path to a verbose appending log. This log is inactive by default.
--proxy Specify a proxy in the form [user:passwd@]proxy.server:port.
--timeout Set the socket timeout (default 15 seconds).
--exists-action Default action when a path already exists: (s)witch, (i)gnore,
(w)ipe, (b)ackup.
--cert Path to alternate CA bundle.
[[email protected] ~]#

Congratulation’s! You have successfully installed Pip. Thanks for using this tutorial for installing Pip Python on Ubuntu 14.04 system. For additional help or useful information, we recommend you to check the official Python web site.