Snipe IT is a powerful open-source asset management system that makes it easy to manage assets, licenses, and other IT inventory. In this tutorial, we will explain how to install Snipe IT on your EndeavourOS Linux operating system.
Before installing any new software, it is important to make sure your system is up to date. Open the terminal and type the following command:
sudo pacman -Syu
This command will update and upgrade your system to the latest available packages.
Snipe IT requires some packages to be installed to work properly with the Linux operating system. To install these dependencies, type the following command in the terminal:
sudo pacman -S git curl wget unzip
This command will install git, curl, wget, and unzip packages.
Snipe IT is built using PHP, which requires some extensions to work correctly. Install the required extensions by running the following command:
sudo pacman -S php php-fpm php-gd php-pdo php-mysql
This command will install PHP extensions and PHP-FPM packages.
MariaDB is the database management system that Snipe IT uses to store asset data. To install MariaDB, run the following command:
sudo pacman -S mariadb
After the installation, we need to configure MariaDB to create a new database for Snipe IT.
Start the MariaDB service by typing:
sudo systemctl start mariadb
Initialize the database system, set the root password, and secure the installation using the commands below:
sudo mysql_secure_installation
You will be asked a few questions; follow the prompts and answer with Yes, No, or the appropriate value based on the scenario.
After this, create a new database and user for Snipe IT with the following commands, but replace snipe_db
with a name for your Snipe IT database and snipe_user
with the username you want to use. Change password_here
to a secure password.
sudo mariadb -e "CREATE DATABASE snipe_db;"
sudo mariadb -e "GRANT ALL PRIVILEGES ON snipe_db.* TO 'snipe_user'@'localhost' IDENTIFIED BY 'password_here';"
Composer is a package manager for PHP that Snipe IT uses to manage its dependencies. To install Composer, run the following command:
sudo pacman -S composer
Clone the Snipe IT repository to your system by typing the following command:
git clone https://github.com/snipe/snipe-it.git /opt/snipe-it
Navigate to the newly created /opt/snipe-it
directory:
cd /opt/snipe-it
Install the required packages using Composer with the following command:
composer install --no-dev
Create a copy of the .env.example
file in the /opt/snipe-it
directory and name it .env
:
cp .env.example .env
Edit the .env
file with your favorite text editor to customize the environment variables for your application:
sudo nano .env
The file should be similar to:
APP_NAME="Snipe-IT"
APP_ENV=production
APP_DEBUG=false
APP_URL=http://localhost
...
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=snipe_db
DB_USERNAME=snipe_user
DB_PASSWORD=password_here
...
Change the following values to match those of the MariaDB database you created earlier:
DB_DATABASE=snipe_db
DB_USERNAME=snipe_user
DB_PASSWORD=password_here
Create the database tables by running the following command:
php artisan migrate --seed --force
The --force
option is necessary to run the command without user intervention.
Configure your web server to point to the Snipe IT installation directory.
For Apache server, create /etc/httpd/conf.d/snipe-it.conf
file with the following contents. Replace your.domain.com
with your domain or IP address:
<VirtualHost *:80>
ServerName your.domain.com
DocumentRoot /opt/snipe-it/public
<Directory /opt/snipe-it>
AllowOverride All
Order Allow,Deny
Allow from all
Require all granted
Options FollowSymLinks Indexes
</Directory>
</VirtualHost>
Save the file and restart Apache:
sudo systemctl restart httpd
For Nginx server, create a new file /etc/nginx/conf.d/snipe-it.conf
with the following contents. Replace your.domain.com
with your domain or IP address:
server {
listen 80;
server_name your.domain.com;
root /opt/snipe-it/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri =404;
include fastcgi.conf;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
}
}
Save the file and restart Nginx:
sudo systemctl restart nginx
Open your web browser and point it to the domain name or IP address you set up for Snipe IT.
http://your.domain.com
You will see the Snipe IT login page. You can enter your admin credentials provided during installation to login and access the Snipe IT dashboard.
Congratulations! You have successfully installed Snipe IT on your EndeavourOS Linux system.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!