如何安裝免費資產管理系統Snipe-IT在 Ubuntu上

Snipe-IT 資產管理系統


Snipe-IT 是個資產管理的系統,是Open Source開源軟體,也支援繁體的中文介面,介面上也可以管理軟體上的授權,架設上也相當的簡單的,去年就已經知道這個軟體,無奈沒有太多的時間建立跟測試,正值暑假時期,正好有時間可以安裝測試。

安裝環境

Ubuntu 16.04 ,Apache2 , PHP7.0 , MariaDB

進入終端機視窗
安裝完系統的開手式

sudo apt-get update && sudo apt-get upgrade -y

切換到root

sudo su

Apache 2 安裝

apt-get install apache2

瑪麗亞資料庫安裝

apt-get install mariadb-server mariadb-client
mysql_secure_installation
Enter current password for root (enter for none) 直接enter
Set root password ? y 
New Password - 設定瑪莉亞資料庫的root 密碼
Re-enter password - 密碼再輸入一次
Remove anonymous users? y
Disallow root login remotely? y
Reload privilege tables now ? y

測試資料庫連線,並且創建使用者以及Snipe-it所需要使用的資料表

mysql -u root -p 

創建資料表 snipeit_data , 以及使用者snipeit_user,密碼是StrongPassword

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;

設定瑪麗亞資料庫開機的時候就會出來跳舞

sudo systemctl start mysql
sudo systemctl enable mysql


PHP安裝以及所需PHP模組
apt-get install php7.0 libapache2-mod-php7.0 php7.0-mysql php7.0-curl php7.0-gd php7.0-intl  php-imagick php7.0-imap php7.0-mcrypt php7.0-mbstring php-gettext php-zip

重新啟動 Apache2

systemctl restart apache2

測試 PHP 是否正常

echo "<?php phpinfo();" > /var/www/html/info.php && chown www-data:www-data /var/www/html/info.php

開瀏覽器 http://127.0.0.1/info.php,測試是否有顯示php相關資訊

安裝curl

apt-get install curl

安裝Composer

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

安裝git

apt-get install git

切換到Apache web的目錄,下載Git hub上面的Snipe-IT

cd /var/www/
sudo git clone https://github.com/snipe/snipe-it snipe-it

備份 .env檔案為 .env.example

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

修改 .env檔案
nano .env

以下這些資訊是必須要改的,依照情況調整

APP_URL=192.168.0.50                   #若有DNS可自行設定網域名稱,若無可填入IP
APP_TIMEZONE='Asia/Taipei '       #設定時區
DB_DATABASE=snipeit_data          #供Snipe-IT使用的資料表名稱
DB_USERNAME=snipeit_user         #Snipe-IT使用的使用者名稱 
DB_PASSWORD=StrongPassword   #Snipe-IT使用的使用者密碼
設定完以後 Ctrl + x 按下y 存檔

設定 public/uploads以及 storage 的權限

sudo chown -R www-data:www-data storage public/uploads
sudo chmod -R 755 storage
sudo chmod -R 755 public/uploads

使用Composer 安裝 php所需要的相依姓

sudo composer install --no-dev --prefer-source

產生 APP_KEY(不需要填入到.env,該key會自動填入到.env檔案中)

sudo php artisan key:generate

建立 虛擬主機

sudo nano /etc/apache2/sites-available/snipeit.conf

加入以下的敘述

<VirtualHost *:80>
    ServerName 192.168.0.50 #這邊依照你的IP 或者 網域名稱填入
    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 a2ensite snipeit.conf
sudo a2enmod rewrite

關閉預設000-defualt的設定,因為apache2可以設定不同網域名稱 可以對應到不同的設定檔,如果會設定的,可以自行在創立不同的conf去對應,但是為了讓環境簡單一點,我直接先將預設defualt給關閉

sudo a2dissite 000-default.conf

重新啟動Apache2

sudo systemctl restart apache2

到這邊就完成囉!!
其實官方還提供了不同的安裝模式,你可以直接下載 install.sh 來去直接安裝,但是你PHP 跟 Apache2 也還是要先裝, 官方的執行檔似乎只會協助安裝瑪麗亞,而且官方的安裝檔,跑完以後 .env檔案似乎是非常簡陋的,其他mail的設定等等都沒有,所以如果可以的話,還是直接使用git去抓會比較完整。





留言

熱門文章