Post

Instalace Snipe-IT na Ubuntu 20.04

Instalace Snipe-IT na Ubuntu 20.04

Instalace Apache serveru

1
2
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install apache2 -y

Spuštění aplikace Apache a nastavení spuštění po startu serveru

1
sudo systemctl start apache2 && systemctl enable apache2

Povolení portů ve firewall

1
2
sudo ufw allow 'Apache Full'
sudo ufw reload

Povolení modulu mod_rewrite

1
2
sudo a2enmod rewrite
sudo systemctl restart apache2

Instalace PHP 7.4

1
sudo apt-get install php php-bcmath php-bz2 php-intl php-gd php-mbstring php-mysql php-zip php-opcache php-pdo php-calendar php-ctype php-exif php-ffi php-fileinfo php-ftp php-iconv php-intl php-json php-mysqli php-phar php-posix php-readline php-shmop php-sockets php-sysvmsg php-sysvsem php-sysvshm php-tokenizer php-curl php-ldap -y

Instalace PHP Composer

PHP Composer je nástroj na instalaci a správu závislostí PHP knihoven

1
2
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Instalace MariaDB

1
sudo apt-get install mariadb-server mariadb-client -y

Spuštění aplikace MariaDB a nastavení spuštění po startu serveru

1
sudo systemctl start mariadb && systemctl enable mariadb

Konfigurace zabezpečení databázového serveru

1
sudo mysql_secure_installation
1
2
3
4
5
6
Enter current password for root (enter for none): <enter>
Set a root password? [Y/n]: y
Remove anonymous users? : y
Disallow root login remotely? : y
Remove test database and access to it? : y
Reload privilege tables now? : y

Založení databáze pro Snipe-IT

Přihlášení do databázového serveru

1
sudo mysql -u root -p

Vytvoření DB. Hodnotu ZMEN_HESLO nahraď vlastním heslem, možné je změnit i uživatelské jméno snipe_it_user

1
2
3
4
5
CREATE DATABASE snipe_it;
CREATE USER 'snipe_it_user'@'localhost' IDENTIFIED BY 'ZMEN_HESLO';
GRANT ALL PRIVILEGES ON snipe_it.* TO 'snipe_it_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Instalace Snipe-IT

Otevři složku webového serveru

1
cd /var/www/

Stažení aplikace z repozitáře

1
sudo git clone https://github.com/snipe/snipe-it snipe-it

Otevři staženou složku, vytvoř konfigurační soubor a otevři ho pro editaci

1
2
3
cd /var/www/snipe-it
sudo cp /var/www/snipe-it/.env.example /var/www/snipe-it/.env
sudo nano /var/www/snipe-it/.env

Uprav následující proměné

1
2
3
4
5
6
7
APP_URL=snipeit.domena.cz
APP_TIMEZONE='Europe/Prague'

DB_PORT=3306
DB_DATABASE=null
DB_USERNAME=null
DB_PASSWORD=null

Změna oprávnění na Snipe-IT složce

1
2
sudo chown -R www-data:www-data /var/www/snipe-it
sudo chmod -R 755 /var/www/snipe-it

Instalace Snipe-IT závislostí pomocí Composer

1
2
composer update –no-plugins –no-scripts
composer install --no-dev --prefer-source

Vygenerování APP_key

Příkaz vygeneruje APP_key a uloží ho do souboru /var/www/snipe-it/.env

1
php artisan key:generate

Vytvoření Virtual Host File

Zakázání výchozí konfigurace

1
sudo a2dissite 000-default.conf

Vytvoření nového Apache config file

1
sudo nano /etc/apache2/sites-available/snipe-it.conf
1
2
3
4
5
6
7
8
9
10
11
<VirtualHost *:80>
ServerName example.com
ServerAlias www.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>

Povolené nové konfigurace

1
2
sudo a2ensite snipe-it.conf
sudo systemctl restart apache2

Otevři URL webového serveru a dokonči instalaci v prohlížeči.

Instalace CERTBOT a konfigurace https

1
sudo apt-get install certbot python3-certbot-apache -y

Získání certifikátu

1
sudo certbot --apache

Pokračuj podle instrukcí průvodce…

Ověření naplánování obnovy certifikátu

1
sudo systemctl status certbot.timer

Příklad výstupu:

1
2
3
4
5
6
7
8
Output
● certbot.timer - Run certbot twice daily
     Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled)
     Active: active (waiting) since Sun 2022-09-18 20:12:54 UTC; 15min ago
    Trigger: Mon 2022-09-19 00:33:47 UTC; 4h 5min left
   Triggers: ● certbot.service

Sep 18 20:12:54 dev-ts-snipeit-we-vm-1 systemd[1]: Started Run certbot twice daily.

Otestování obovy certifikátu

1
sudo certbot renew --dry-run
This post is licensed under CC BY 4.0 by the author.