9.0.0 8.3.0 8.2.0-8.2.1 8.1.0-8.1.1 8.0.0-8.0.3 7.4.0-7.4.6 7.3.0-7.3.2 7.2.0-7.2.1 7.1.0-7.1.2 7.0.0-7.0.2 6.1.0-6.1.2 View All PV Cloud PV Local Installs
Auto Light Dark
Auto Light Dark
9.0.0 8.3.0 8.2.0-8.2.1 8.1.0-8.1.1 8.0.0-8.0.3 7.4.0-7.4.6 7.3.0-7.3.2 7.2.0-7.2.1 7.1.0-7.1.2 7.0.0-7.0.2 6.1.0-6.1.2 View All PV Cloud PV Local Installs

ProVision Local Installation For Ubuntu

Before You Begin

Ensure that System Requirements have been met prior to proceeding with the Installation Guide.

Permissions

Before installing, verify that you have appropriate install permissions. Depending on your permissions and system setup, commands may need to be run as superuser by prepending "sudo" to the listed commands.

Install Requirements for Ubuntu 18.04

1) Upgrade your current packages

Upgrade packages

Upgrade your current packages.

PowerShell
   apt-get update
   apt-get upgrade


2) Install Required Packages

PHP

Installations of ProVision 7.x and newer require  PHP 7.1 (and related extensions). You can either add a repository which provides PHP 7.1 or install PHP manually. In this example, we use the default package sources for Ubuntu 18.04 to install Apache 2.4 and PHP 7.1. We also provide an option to install PHP 5.7 through a third-party repository.

If you are installing PHP 7.x click here...

 If you are installing ProVision 7.x, or after, make sure that your build archive has "php7.x" as part of its name. For example "productionBuild-7.0.0-php7.1.tar".

1. Add PHP 7.1 package sources to your system:

Bash
 add-apt-repository ppa:ondrej/php

and confirm with ENTER to continue.

If you get an error here, you may need to install python-software-properties first and then repeat the repository add as follows:

Bash
apt-get update 
apt-get install python-software-properties
 
add-apt-repository ppa:ondrej/php

2. Update packages:

Bash
apt-get update


3. Install PHP:

Bash
apt-get install php7.1

and confirm with “y” and ENTER.

You’ll now see “PHP 7.1.x” in the scrolling installation logs.

To verify the installed version of PHP, run:

Bash
php7 -v


4. Install Apache2/PHP 7.x/MySQL 5.7 and development tools for pecl:

PHP 7.x / Apache2 / extensions:

  • httpd 

  • php7.1w 

  • php7.1w-opcache 

  • php7.1w-mysqlnd 

  • php7.1w-pdo 

  • php7.1w-ldap 

  • php7.1w-pecl-memcache 

  • php7.1w-bcmath 

  • php7.1w-devel 

  • php7.1w-pear 

  • php7.1w-cli

  • php7.1-imap

Development tools for pecl / additional system packages:

  • curl 

  • openssl 

  • memcached 

  • mod_ssl

Bash
apt-get install apache2 libapache2-mod-php7.1 php7.1 php7.1-cgi php7.1-cli php7.1-gd php7.1-curl php7.1-ldap php7.1-mysqlnd php7.1-ssh2 php-pear php7.1-dev php7.1-imap curl openssl memcached php7.1-memcache

MySQL

ProVision 7.x and above requires MySQL 5.7 and above.

Install MySQL to use a local database:

Bash
apt-get install mysql-server

You will be asked to enter a root password for the mysql server.

To install MySQL 5.6.20+, click here...

Add new repository for MySQL 5.7 distribution.

Bash
apt-key adv --keyserver pgp.mit.edu --recv-keys 5072E1F5
echo "deb http://repo.mysql.com/apt/ubuntu/ trusty mysql-5.7" >> /etc/apt/sources.list.d/mysql.list

Update current packages.

Bash
apt-get update

Install MySQL 5.7 to use a local database.

Bash
apt-get install mysql-server-5.7

You will be asked to enter a root password for the mysql server.

MySQL is now installed. You can proceed to next section DNS And Additional Utilities

 

 DNS and Additional Utilities

Install DNS and Additional Utilities

Install the DNS and other utilities:

  • curl 

  • openssl 

  • nmap

  • dnsutils

  • bind9utils

  • expect

apt-get install curl openssl nmap dnsutils bind9utils expect

 

3) Configure the requirements:

SSL

SSL

Enable the necessary apache modules with the following command:

Bash
a2enmod php7 ssl rewrite headers

In order to create self-signed certificates and to work properly, the hostname must be resolved properly:

Open the hosts file for editing: 

Bash
    vi /etc/hosts

Add a record for your hostname:

    X.X.X.X yourhostname

Create self-signed certificate:

Bash
    make-ssl-cert generate-default-snakeoil --force-overwrite

Apache

Apache

mod rewrite REQUIRED

Please note that mod_rewrite is required! If it is not enabled in Apache, key elements will not work as expected.

Enable the default vhost for apache:

Bash
    a2ensite default-ssl

Allow overwrites in the apache vhosts:

Bash
sed -i 's/AllowOverride None/AllowOverride All/g' /etc/apache2/apache2.conf

Update site configurations to use /var/www for docroot:

Bash
sed -i 's/\/var\/www\/html/\/var\/www/' /etc/apache2/sites-available/000-default.conf
sed -i 's/\/var\/www\/html/\/var\/www/' /etc/apache2/sites-available/default-ssl.conf

Restart apache:

Bash
    service apache2 restart

MySQL

MySQL

MySQL Configuration:

Bash
    mysql -p -e "SET GLOBAL sql_mode='NO_ENGINE_SUBSTITUTION';SET SESSION sql_mode='NO_ENGINE_SUBSTITUTION';"

Then, enter the MySQL root password when prompted.

MySQL Packet Size Configuration

 We recommend setting the max_allowed_packet setting in the MySQL configuration file to 128MB (or similar) to account for the typical dataset size handled in ProVision.


4) Optional configurations:

Radius (Optional)

This section only needs to be followed if the customer will be using Radius for authentication.

If you are going to use radius authentication, click here.

Install radius module:

Bash
    apt-get install php7-radius

Create module loading configuration:

(shown using the vi editor, though you may use the editor of your choice)

	vi /etc/php5/mods-available/radius.ini

  Add the following lines to radius.ini:

    ; configuration for php radius module
    ; priority=20
    extension=radius.so

  To enable the radius module, type the following command:

Bash
    php7enmod radius


SSH

SSH

Install ssh module:

Bash
apt-get install libssh2-1-dev

 then run:

Bash
pecl install ssh2-1.1.2

Create module loading configuration:

 (shown using the vi editor, though you may use the editor of your choice)

vi /etc/php7/mods-available/ssh2.ini

Add the following lines to ssh2.ini (adding extension=ssh2.so to your ssh2.ini):

    ; configuration for php ssh2 module
    ; priority=20
    extension=ssh2.so

To enable, type the following command:

Bash
	phpenmod ssh2

Reload apache:

Bash
service apache2 reload


5) Install ProVision Software:

Install ProVision

1.  Remove the current contents in the ProVision web folder location (currently the www root) and after extract the archive contents (where 7.x.x is the version number for the build):

Bash
 	tar -xf productionBuild-7.x.x-php7.x.tar -C /var/www/

2. Change the permissions to be the web user permissions

Bash
    chown -R www-data.www-data /var/www

3. Go to http://﹤web root﹥/install/configTest.php.  Follow the provided instructions, correcting any configuration errors if they occur. Once all steps are completed, you are ready to use your ProVision instance!