snipe-it 所需环境:

Apache:2.4.6

PHP: 8.0

mysql: 8.0

Composer: 2.7.6

Git: 1.8.3

phpmyadmin: 4.4.15

准备安装前需要先关闭防火墙

//临时关闭SELinux
[root@itservers ~]# setenforce 0        
//永久关闭SELinux(重启生效)
[root@itservers ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config  
//临时关闭防火墙
[root@itservers ~]# systemctl stop firewalld.service   
//永久关闭防火墙
[root@itservers ~]#systemctl disable firewalld.service

更换YUM源,这里使用的是阿里源

[root@itservers ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

开始安装:

1、安装Apache以及其扩展包;启用并启动 Apache HTTP 服务器的

[root@itservers ~]# yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql
[root@itservers ~]# systemctl enable httpd && systemctl start httpd
[root@itservers ~]# systemctl status httpd     //查看是否启动成功
[root@itservers ~]# httpd -v 		//查看apache 版本

超详细 CentOS7.9 下搭建SnipeIT_mysql

在浏览器上输入 IP地址显示如下图片,即表示apache服务安装启动成功

超详细 CentOS7.9 下搭建SnipeIT_mysql_02

2、安装PHP

先安装 epel 仓库,然后添加 remi源

[root@itservers ~]# yum install -y epel-release 
[root@itservers ~]# yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
[root@itservers ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@itservers ~]# rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装 yum-uils;并单独启用 php80的源

[root@itservers ~]# yum -y install  yum-utils
[root@itservers ~]# yum-config-manager --disable 'remi-php*'
[root@itservers ~]# yum-config-manager --enable remi-php80
如果安装8.1.2可以改为 [root@itservers ~]# yum-config-manager --enable remi-php81
[root@itservers ~]# yum-config-manager --disable remi-php54

[root@itservers ~]# yum-config-manager --enable remi-php74
如果安装8.1.2可以改为 [root@itservers ~]# yum-config-manager --enable remi-php81

安装PHP及常用扩展

[root@itservers ~]# yum install -y php php-bcmath php-cli php-common php-devel php-fpm php-gd php-intl php-ldap php-mbstring php-mysqlnd php-odbc php-pdo php-pear php-pecl-xmlrpc php-pecl-zip php-process php-snmp php-soap php-sodium php-xml

检查PHP版本,并配置php为开机自启

[root@itservers ~]# php -v
[root@itservers ~]# systemctl status php-fpm
[root@itservers ~]# systemctl start php-fpm
[root@itservers ~]# systemctl enable php-fpm

配置httpd文件

[root@itservers ~]# vim /etc/httpd/conf/httpd.conf
	//在httpd.conf中找到DirectoryIndex后面增加index.php
	//在httpd.conf中找到AddType application/x-gzip .gz .tgz后面新增一行
	AddType application/x-httpd-php .php .phtml

查看是否已安装mysql或者mariadb,如过已经安装先删除

[root@itservers ~]# rpm -qa |grep mariadb				//查看是否已经安装mariadb
[root@itservers ~]# rpm -qa |grep mysql					//查看是否已经安装mysql
[root@itservers ~]# yum -y remove mariadb*			//删除已安装的mariadb
[root@itservers ~]# yum -y remove mysql*				//删除已安装的mysql

查看老版本中相关的安装目录,如果有的话就删除掉

[root@itservers ~]# find / -name mysql

下载mysql8.0的包,并使用 rpm -ivh 安装

[root@itservers ~]# wget https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm
[root@itservers ~]# rpm -ivh mysql80-community-release-el7-7.noarch.rpm

使用yum安装mysql。安装前需要先删除旧的 GPG密钥,重新获取新的

[root@itservers ~]# rpm -e --allmatches gpg-pubkey-*
[root@itservers ~]# rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023
[root@itservers ~]# yum -y install mysql-community-server

启动mysql 并测试

[root@itservers ~]# systemctl restart mysqld			//重启mysql服务
[root@itservers ~]# systemctl status mysqld |grep active  		//查看MySQL服务是否正在运行
[root@itservers ~]# ps -ef |grep mysqld |grep -v grep			//查看mysql运行进程
[root@itservers ~]# netstat -antlp |grep mysqld					//查看mysql的网络连接信息
[root@itservers ~]# mysql -V			查看mysql版本

mysql安装时会自动生成一个密码,可以通过mysql日志查看自动生成的随机密码。

[root@itservers ~]# grep "temporary password" /var/log/mysqld.log

超详细 CentOS7.9 下搭建SnipeIT_snipeit_03

登录mysql,更改root密码(建议免密大于8位,有大写小写英文字母及数字)

[root@itservers ~]# mysql -uroot -p
mysql> alter user 'root'@'localhost' identified by 'Abc@123!';
mysql>  flush privileges;

增加snipeit数据库,并设置账户密码

//创建snipeit数据库
mysql> CREATE DATABASE snipeit;
//创建用户snipeit并设置密码
mysql> CREATE USER 'snipeit'@'localhost' IDENTIFIED BY 'Pass@word1';
//给snipeit账号授权
mysql> GRANT ALL PRIVILEGES ON snipeit.* TO 'snipeit'@'localhost';
//刷新权限
mysql> FLUSH PRIVILEGES;

安装git 下载snipe-it到本地

[root@itservers ~]# yum install -y git
[root@itservers ~]# cd /var/www
[root@itservers www]# git clone https://github.com/snipe/snipe-it snipe-it

进入snipe-t文件夹,修改.env文件

[root@itservers ~]# cd /var/www/snipe-it
[root@itservers snipe-it]# cp .env.example .env
[root@itservers snipe-it]# vim .env

按照以下内容修改

#改时区
APP_TIMEZONE=Asia/Shanghai
#设置默认语言
APP_LOCALE=zh-CN
#设置访问地址或域名,这里填什么就确定了用这个域名访问时才能看到图片
APP_URL=http://127.0.0.1
#留空就行,后面会配置
APP_KEY=
#数据库地址
DB_HOST=localhost
#库名
DB_DATABASE=snipeit
#数据库账户              
DB_USERNAME=snipeit
#数据库密码
DB_PASSWORD=Pass@word1

更改目录权限

[root@itservers ~]# cd /var/www/snipeit/bootstrap
[root@itservers bootstrap]# chmod 777 -R cache
[root@itservers ~]# cd /var/www/snipe-it
[root@itservers snipe-it]# chmod -R 755 storage
[root@itservers snipe-it]# chmod -R 755 public/uploads
[root@itservers snipe-it]# chown -R apache:apache storage public/uploads

配置apache,创建虚拟机

[root@itservers ~]# vim /etc/httpd/conf.d/snipeit.com.conf
<VirtualHost *:80>
		ServerName snipeit.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>

安装composer

#切换到snipeit目录
[root@itservers ~]# cd /var/www/snipe-it
#下载composer
[root@itservers snipe-it]# curl -sS https://getcomposer.org/installer | php
#拷贝到执行文件夹,这一步不是必须
[root@itservers snipe-it]# cp composer.phar /usr/bin/composer
#禁用默认源镜像
[root@itservers snipe-it]# composer config -g secure-http false
#修改为阿里云镜像源
[root@itservers snipe-it]# composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
#查看修改结果
[root@itservers snipe-it]# composer config -g -l
#更新
[root@itservers snipe-it]# composer update   //如果安装的是php8.1.2此处需要修改些内容才可进行更新
#运行安装缺少的扩展
[root@itservers snipe-it]# composer install --no-dev --prefer-source

php8.1.2 :composer update 报错

[root@itservers snipe-it]# composer update
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Continue as root/super user [yes]? yes
Loading composer repositories with package information                          Updating dependencies                                 
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires barryvdh/laravel-debugbar ^3.13, found barryvdh/laravel-debugbar[dev-master, 3.13.x-dev (alias of dev-master)] but these do not match your minimum-stability and are therefore not installable. Make sure you either fix the minimum-stability or avoid updating this package to keep the one present in the lock file (barryvdh/laravel-debugbar[v3.13.5]).

解决办法:打开 composer.json 文件,添加或修改 minimum-stability 选项为 dev,并且可以添加 prefer-stable 选项:

[root@itservers snipe-it]# vim /var/www/snipe-it/composer.json
#编辑添加以下两行内容
"minimum-stability": "dev",
 "prefer-stable": true,
 
 [root@itservers snipe-it]# composer install --no-dev --prefer-source


生成app_key,然后重启apache

[root@itservers snipe-it]# php artisan key:generate
[root@itservers snipe-it]# systemctl restart httpd

到这里snipe-it就部署完成了,打开浏览器,输入地址即可正常访问了

超详细 CentOS7.9 下搭建SnipeIT_mysql_04

安装PHPMyAdmin

通过 PHPMyAdmin,你可以更直观便捷的管理你的 MySQL 数据库,执行查询,导入和导出数据,以及进行其他数据库管理操作。

[root@itservers ~]# yum install phpmyadmin -y

编辑phpmyadmin配置文件,按照下图进行修改

[root@itservers ~]# vim /etc/httpd/conf.d/phpMyAdmin.conf

超详细 CentOS7.9 下搭建SnipeIT_snipeit_05

重启apache服务

[root@itservers ~]# systemctl restart httpd

我们可以通过在浏览器的地址栏中输入http://10.0.0.220/phpMyAdmin 来打开 phpMyAdmin,出现以下界面并正常登录即可

超详细 CentOS7.9 下搭建SnipeIT_php_06

超详细 CentOS7.9 下搭建SnipeIT_mysql_07