在 Ubuntu 20.04 上安裝 Snipe-IT

在 Ubuntu 20.04 上安裝 Snipe-IT

在本文中,我們將解釋如何在 Ubuntu 20.04 上安裝 Snipe-IT。

Snipe-IT 專為 IT 資產管理而設計,使 IT 部門能夠跟踪誰擁有哪台筆記本電腦、何時購買、哪些軟件許可證和附件可用,等等。Snipe-IT 是一種開源 IT 資產管理工具,無需複雜的 IT 資產跟踪電子表格。

先決條件

  • 安裝了 Ubuntu 20.04 的專用服務器或 KVM VPS。
  • root 用戶訪問權限或具有管理權限的普通用戶。

在 Ubuntu 20.04 上安裝 Snipe-IT

1.更新服務器並安裝依賴:

# apt update -y

# apt upgrade -y

安裝解壓依賴

# apt-get install unzip -y

2. 安裝 Apache 網絡服務器

# apt install apache2 -y

安裝完成後,使用以下命令啟動並啟用 apache2 服務:

# systemctl start apache2 && systemctl enable apache2

如果您啟用了防火牆和防火牆阻止 apache Web 服務器的請求,請在防火牆中打開一個端口。

# ufw allow 80/tcp

# ufw allow 443/tcp

# ufw reload

現在,讓我們驗證 Apache 安裝。打開瀏覽器並測試默認頁面。

http://[SERVER IP]

啟用 Apache 的 mod_rewrite 模塊。Snipe-IT 需要這個擴展來更乾淨地重寫 URL。

# sudo a2enmod rewrite

重新啟動 Apache Web 服務器以應用更改。

# systemctl restart apache2

3.安裝MariaDB

# apt install mariadb-server mariadb-client -y

使用以下命令啟動並啟用 mariadb 服務:

# systemctl start mariadb && systemctl enable mariadb

MariaDB 的默認配置不會受到保護。讓我們使用以下命令保護安裝:

# mysql_secure_installation

一旦腳本被執行,它會問多個問題。

它會要求您輸入 root 的當前密碼(輸入無):

然後在以下安全問題中輸入 yes/y:

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

4.安裝PHP和PHP Composer

在這裡,我們使用以下命令安裝默認的 PHP 版本 7.4 和其他用於 Web 部署的模塊:

# apt 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

安裝 PHP Composer,這是一個 PHP 依賴管理工具,用於在您的 Snipe-IT 中安裝和更新庫。

下載 Composer 安裝程序。

# curl -sS https://getcomposer.org/installer | php

將 composer.phar 可執行文件移動到 /usr/local/bin/。

# mv composer.phar /usr/local/bin/composer

5. 創建數據庫

為 Snipe-IT 創建數據庫和數據庫用戶。首先以 root 用戶身份登錄 MySQL/MariaDB。

# mysql -u root -p

運行以下命令來執行此任務:

CREATE DATABASE snipe_it;
CREATE USER 'snipe_it_user’@’localhost' IDENTIFIED BY 'EXAMPLE_PASSWORD';
GRANT ALL PRIVILEGES ON snipe_it.* TO 'snipe_it_user’@’localhost';
FLUSH PRIVILEGES;
EXIT;

注意:將snipe_it_user替換為您選擇的用戶名,並將EXAMPLE_PASSWORD替換為您選擇的密碼。

6. 安裝 Snipe-IT

導航到 Web 服務器的根目錄。

# cd /var/www/

使用 git 從 https://github.com/snipe/snipe-it URL 克隆最新的 Snipe-IT 存儲庫,並將下載的文件複製到 snipe-it 目錄。

# git clone https://github.com/snipe/snipe-it snipe-it

切換到 snipe-it 目錄。

# cd /var/www/snipe-it

Snipe-IT 附帶了一個示例配置文件。將其複製到 /var/www/snipe-it/.env。

# cp /var/www/snipe-it/.env.example /var/www/snipe-it/.env

編輯配置文件。

# nano /var/www/snipe-it/.env

在 Snipe-IT 配置文件中,找到這些設置。

APP_URL=null
APP_TIMEZONE=’UTC'

將 APP_URL 設置為您服務器的完全限定域名,或者它的公共 IP 地址。如果您使用 UTC 以外的時區,請將時區更改為 PHP 支持的時區,並將其括在單引號中。

APP_URL=example.com
APP_TIMEZONE=’America/New_York'

找到這些設置。

DB_DATABASE=null
DB_USERNAME=null
DB_PASSWORD=null

將這些值更改為您在步驟 3 中設置的數據庫信息。

DB_DATABASE=snipe_it
DB_USERNAME=snipe_it_user
DB_PASSWORD=EXAMPLE_PASSWORD

保存並關閉文件。

為 Snipe-IT 數據目錄設置正確的所有權和權限。

# chown -R www-data:www-data /var/www/snipe-it
# chmod -R 755 /var/www/snipe-it

使用 Composer 安裝 Snipe-IT 依賴項。您將收到一條警告,不要在每個命令上以 root 身份運行它。可以以 root 身份繼續安裝 Snipe-IT,所以輸入 yes 並按 ENTER。

# composer update --no-plugins --no-scripts
# composer install --no-dev --prefer-source --no-plugins --no-scripts

Composer 完成運行後,在您之前創建的 /var/www/snipe-it/.env 配置文件中生成 Laravel APP_Key 值。輸入 yes 並在提示繼續時按 Enter。

# php artisan key:generate

7. 創建虛擬主機文件

首先,我們將禁用默認的 Apacheconf 文件並創建新的 vhost conf 文件。

禁用默認的 Apache 配置文件。

# a2dissite 000-default.conf

創建一個新的 Apache 配置文件。

# nano /etc/apache2/sites-available/snipe-it.conf

粘貼以下信息並將 example.com 替換為您服務器的域名或公共 IP 地址。


ServerName example.com
DocumentRoot /var/www/snipe-it/public

Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
 

保存並退出文件。

啟用您的新配置文件。

# a2ensite snipe-it.conf

重新啟動 Apache Web 服務器以應用更改。

# systemctl restart apache2

8. 運行安裝嚮導

導航到您的瀏覽器並使用您在 vhost conf 文件中提到的服務器 IP 或域名訪問設置嚮導。

在 Ubuntu 20.04 上安裝 Snipe-IT

完成設置嚮導後,您將重定向到 dashbord

在 Ubuntu 20.04 上安裝 Snipe-IT

在本文中,我們已經看到瞭如何在 Ubuntu 20.04 上安裝 Snipe-IT。