If you're looking for an ERP solution that won't break the bank, Jack Wallen shows you how to install WebERP on the Ubuntu Server platform.
Nearly every business relies on accounting and business management tools. When you start testing the waters of that arena, you'll find there are as many solutions as there are problems. You can go with a hosted solution; a straight-up, old-school client-server solution, or you can install an in-house web-based solution like WebERP in your data center. This particular take on the Enterprise Resource Planning (ERP) tool is a mature open-source system that provides best practise, multi-user business administration and accounting tools. WebERP is entirely web based, can run on any web-server that can accommodate PHP, produces reports in PDF format, and so much more.
I want to demonstrate how to get WebERP up and running on the Ubuntu Server 16.04 platform. This how to will assume you already have Ubuntu Server up and running, and is reachable on your network. With that said, let's install.
Installing the dependencies
The first thing we must do is prepare our server for the installation of WebERP. Open up a terminal window and update/upgrade with the following commands:
sudo apt update sudo apt upgrade
Do note that the above might upgrade your kernel (which would require a reboot). Because of this, you might want to schedule this when server downtime is acceptable.
Once the update/upgrade is complete, you need to install the AMP portion of the LAMP stack. If you already have a LAMP stack running, skip this section (and head to the database creation).
Install the server stack with the command:
sudo apt install apache2, php7.0 php7.0-cli php7.0-mysql php7.0-gd php7.0-mcrypt php7.0-json php-pear php-mbstring php-gd -y
Once that completes, start and enable Apache with the commands:
sudo systemctl start apache2 sudo systemctl enable apache2
Personally, I prefer working with MySQL, but if you prefer MariaDB, you can install it with the following commands:
sudo apt-get install software-properties-common -y sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://www.ftp.saix.net/DB/mariadb/repo/10.1/ubuntu xenial main' sudo apt-get install mariadb-server mariadb-client -y
During the installation, you will be prompted to type and verify a root user password for the database (Figure A).
Configure the database
Now we're going to create a database, a database user, and then give that user the necessary privileges. Gain access to the MySQL prompt with the command:
mysql -u root -p
Type the MySQL root user password and then create the database with the command:
CREATE DATABASE weberp_db;
Create a database user and password (to be used for WebERP) with the command:
CREATE USER 'weberp'@'localhost' IDENTIFIED BY 'PASSWORD';
Where PASSWORD is the password you will use for the new user.
Next we grant the proper privileges for the new user with the command:
GRANT ALL PRIVILEGES ON weberp_db.* TO 'weberp'@'localhost';
Flush the database privileges and exit the database with the commands:
flush privileges; exit;
Download and prep WebERP
Now we're going to download the WebERP file, extract it, move it, and give it the proper permissions. I'm going to warn you, the file is hosted on Sourceforge, whose current security certificate is invalid. To download the file with wget, you need to issue the following command:
wget --no-check-certificate https://excellmedia.dl.sourceforge.net/project/web-erp/webERP4.14.1.zip
If your server includes a GUI, you could always point your browser to the download pag, and snag it via standard HTTP.
Before you extract the file, you might need to install unzip. To do this, issue the command:
sudo apt install unzip
Once that installation completes, extract the file with the command:
Move and rename the file with the following command:
sudo cp -r webERP /var/www/html/weberp
Give the file the proper permissions with the command:
sudo chown -R www-data:www-data /var/www/html/weberp
For our next trick, we'll configure Apache to work with WebERP. First we must create a new virtual host file with the command:
sudo nano /etc/apache2/sites-available/weberp.conf
Within that new file, add the following:
<VirtualHost *:80> ServerAdmin firstname.lastname@example.org DocumentRoot "/var/www/html/weberp/" ServerName yourdomain.com ServerAlias www.yourdomain.com <Directory "/var/www/html/weberp/"> Options FollowSymLinks AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/weberp-error_log CustomLog /var/log/apache2/weberp-access_log common </VirtualHost>
Note: Customize the above file to meet your particular needs.
Now we must enable the new site with the command:
sudo a2ensite weberp
Restart Apache (so that it is aware of the new site) with the command:
sudo systemctl restart apache2
Finally, point a browser to http://SERVER_IP/weberp to open the WebERP Install GUI (Figure B).
Select your language and click NEXT STEP. In the resulting window (Figure C), you must configure the database we created earlier. Enter that information and click NEXT STEP.
In the final window (Figure D), configure the company settings. Make sure to scroll down to the bottom and change the admin user's password.
Once you've configured your company settings, click the INSTALL button and wait for the installation to complete. When the installation finishes, you can then login with username admin and the password you created on the last screen and start working with WebERP.
Congratulations, your new ERP solution is ready to serve you from your data center. At this point, you will have quite a bit of work to do to get the system ready for daily usage. I highly recommend going through the WebERP online manual.
- How to enable automatic security updates on CentOS 7 with yum-cron (TechRepublic)
- How to deploy and use a MySQL Docker container (TechRepublic)
- How to install a GUI on top of CentOS 7 (TechRepublic)
- How to quickly install Kubernetes on Ubuntu (TechRepublic)
- How to prepare your data center for natural disasters (TechRepublic)
- Beyond Kaspersky: How a digital Cold War with Russia threatens the IT industry (ZDNet)