Snipe-IT is a free and open source web application for IT assets management. It is written on the Laravel 5.2 framework and uses MySQL to store its data. Snipe-IT is a complete and comprehensive solution for assets management, software license management, and much more.
In this tutorial, you will learn to install Snipe-IT on CentOS 7.
Before installing any packages on the CentOS server instance, it is recommended to update the system. Log in using the sudo user and run the following commands to update the system.
sudo yum -y install epel-release sudo yum -y update sudo shutdown -r now
Once the system has rebooted, log in again as the sudo user and proceed to the next step.
Install the Apache web server.
sudo yum -y install httpd
Start Apache and enable it to automatically run at boot time.
sudo systemctl start httpd.service sudo systemctl enable httpd.service
Snipe-IT is compatible with any version of PHP greater than 5.5.9. However, PHP 5.5 has reached end of life, thus you will need to install PHP 5.6. First, add and enable the Remi repository.
sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum -y install yum-utils sudo yum-config-manager --enable remi-php56
Next, install the latest version of PHP with the modules needed by Snipe-IT.
sudo yum -y install php php-openssl php-pdo php-mbstring php-tokenizer php-curl php-mysql php-ldap php-zip php-fileinfo php-gd php-dom php-mcrypt
MariaDB is a fork of MySQL. Install it using following command.
sudo yum -y install mariadb mariadb-server
Start MariaDB and enable it to automatically start at boot time.
sudo systemctl start mariadb.service sudo systemctl enable mariadb.service
Secure your MariaDB installation.
You will be asked for the current MariaDB root password. As we have just installed MariaDB, its root password has not been set. Press the
enter key to proceed. Set a strong root password for your MariaDB server and answer
Y to all of the other questions asked. The questions asked are self explanatory.
Log into the MariaDB shell as its root user using the following command.
mysql -u root -p
Provide the password for the MariaDB root user.
Run the following queries to create a database and a database user for Snipe-IT.
CREATE DATABASE snipeit_data; CREATE USER 'snipeit_user'@'localhost' IDENTIFIED BY 'StrongPassword'; GRANT ALL PRIVILEGES ON snipeit_data.* TO 'snipeit_user'@'localhost'; FLUSH PRIVILEGES; EXIT;
Make sure that you use a semicolon at the end of each query above. You can replace the database name "
snipeit_data" and username "
snipeit_user" according to your needs. Be sure to change "
StrongPassword" to a very strong password.
Install Composer using the following command. Composer is a dependency manager for PHP.
cd ~ curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/bin/composer
First, install Git.
sudo yum -y install git
Switch to Apache's web-root folder and clone the latest version of Snipe-IT.
cd /var/www/ sudo git clone https://github.com/snipe/snipe-it snipe-it
.env file from example file provided.
cd /var/www/snipe-it sudo cp .env.example .env
sudo nano .env
Find the following lines and edit the values according to instructions provided.
APP_URL=null #Provide your domain name or IP address here APP_TIMEZONE='UTC' #Change it according to your country DB_DATABASE=null #Provide the database name you created earlier DB_USERNAME=null #Provide database user's username DB_PASSWORD=null #Provide the DB user's password
Leave the default values for all of the other parameters. Save the file and exit the text editor.
Provide the appropriate ownership and file permissions.
sudo chown -R apache:apache storage public/uploads sudo chmod -R 755 storage sudo chmod -R 755 public/uploads
Install PHP dependencies using Composer.
sudo composer install --no-dev --prefer-source
Generate the "
sudo php artisan key:generate
Allow HTTP traffic on port
80 through the firewall.
sudo firewall-cmd --zone=public --permanent --add-service=http sudo firewall-cmd --reload
Run the following command to create a virtual host for your Snipe-IT site.
sudo nano /etc/httpd/conf.d/snipeit.example.com.conf
Add the following lines into the file, then save the file.
<VirtualHost *:80> ServerName snipeit.example.com DocumentRoot /var/www/snipe-it/public <Directory /var/www/snipe-it/public> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>
sudo systemctl restart httpd
Your Snipe-IT installation is now complete. You can finish configuring Snipe-IT through your web browser. Navigate to the following link, replacing
snipeit.example.com with the IP address of your Vultr VPS.
Thank you for reading. This concludes the tutorial.