Snipe-IT IT 资产管理系统部署教程

Snipe-IT 是一款流行的开源 IT 资产管理系统,专为企业和团队设计,用于跟踪和管理硬件设备、软件许可证、配件和耗材。它提供了直观的 Web 界面,支持条形码/二维码扫描、审计日志、报表导出等功能。本文将介绍如何在搬瓦工 VPS 上通过 Docker 快速部署 Snipe-IT。

一、Snipe-IT 功能特点

  • 硬件资产管理:跟踪笔记本、服务器、显示器等硬件设备的领用、归还、维修状态。
  • 软件许可证管理:管理软件许可证的数量、到期时间和分配情况。
  • 配件和耗材:跟踪鼠标、键盘、硒鼓等配件的库存和领用。
  • 人员关联:将资产与员工关联,清晰记录每个人名下的设备。
  • 条形码支持:自动生成资产标签,支持条形码和二维码扫描。
  • 审计日志:完整记录所有资产变更操作,便于追溯。
  • 报表功能:生成各类资产报表,支持 CSV 导出。
  • REST API:提供完整的 API 接口,方便与其他系统集成。

二、环境准备

  • 搬瓦工 VPS 一台,建议 1GB 以上内存(使用优惠码 NODESEEK2026 享受 6.77% 折扣)。
  • 已安装 Docker 和 Docker Compose(参考 Docker 安装教程)。
  • 域名一个(推荐)。

2.1 创建项目目录

mkdir -p /opt/snipeit
cd /opt/snipeit

三、Docker Compose 部署

cat > /opt/snipeit/docker-compose.yml <<'EOF'
version: '3.8'

services:
  mysql:
    image: mysql:8.0
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root_password_here
      MYSQL_DATABASE: snipeit
      MYSQL_USER: snipeit
      MYSQL_PASSWORD: snipeit_db_password
    volumes:
      - mysql_data:/var/lib/mysql

  snipeit:
    image: snipe/snipe-it:latest
    restart: always
    depends_on:
      - mysql
    ports:
      - "8080:80"
    environment:
      APP_KEY: base64:your_generated_app_key_here
      APP_URL: https://assets.yourdomain.com
      APP_TIMEZONE: Asia/Shanghai
      APP_LOCALE: zh-CN
      DB_CONNECTION: mysql
      DB_HOST: mysql
      DB_DATABASE: snipeit
      DB_USERNAME: snipeit
      DB_PASSWORD: snipeit_db_password
      MAIL_DRIVER: smtp
      MAIL_HOST: smtp.yourdomain.com
      MAIL_PORT: 587
      MAIL_USERNAME: noreply@yourdomain.com
      MAIL_PASSWORD: mail_password
      MAIL_ENCRYPTION: tls
      MAIL_FROM_ADDR: noreply@yourdomain.com
      MAIL_FROM_NAME: Snipe-IT
    volumes:
      - snipeit_data:/var/lib/snipeit

volumes:
  mysql_data:
  snipeit_data:
EOF

3.1 生成 APP_KEY

docker run --rm snipe/snipe-it php artisan key:generate --show

将输出的密钥(形如 base64:xxxx...)填入 APP_KEY 中。

四、启动服务

cd /opt/snipeit
docker compose up -d

等待数据库初始化完成,查看日志:

docker compose logs -f snipeit

访问 http://VPS_IP:8080,首次访问会显示安装向导(Pre-Flight Check),按照提示完成设置。

五、配置 Nginx 反向代理

cat > /etc/nginx/sites-available/snipeit <<'EOF'
server {
    listen 80;
    server_name assets.yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    client_max_body_size 50m;
}
EOF

ln -sf /etc/nginx/sites-available/snipeit /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d assets.yourdomain.com

六、初始配置

6.1 基础设置

登录后进入管理面板,完成以下基础配置:

  • 设置公司名称和 Logo。
  • 配置资产编号前缀和自增规则。
  • 设置默认语言为简体中文。
  • 配置邮件通知(资产领用、归还通知)。

6.2 创建分类和型号

在开始录入资产之前,先建立分类体系:

  1. 创建资产分类:笔记本、台式机、显示器、打印机等。
  2. 创建厂商:Dell、Lenovo、Apple 等。
  3. 创建设备型号,关联到分类和厂商。

6.3 导入现有数据

Snipe-IT 支持通过 CSV 文件批量导入资产数据,在管理界面的导入功能中上传 CSV 文件即可。

七、数据备份

# 备份数据库
docker compose exec mysql mysqldump -u snipeit -p snipeit > /opt/snipeit/backup_$(date +%Y%m%d).sql

# 备份上传文件
docker cp $(docker compose ps -q snipeit):/var/lib/snipeit /opt/snipeit/files_backup

八、常见问题

安装向导报错

如果 Pre-Flight Check 报告缺少 PHP 扩展,使用官方 Docker 镜像一般不会遇到此问题。确保使用最新版本的镜像。

上传文件大小限制

如果需要上传大文件(如设备照片),调整 Nginx 的 client_max_body_size 和 PHP 的上传限制。

总结

Snipe-IT 是一个功能完善且易用的 IT 资产管理系统,特别适合中小企业管理 IT 设备。配合 NetBox 使用可以覆盖从网络基础设施到终端设备的完整管理需求。选购搬瓦工 VPS 请访问 bwh81.net,使用优惠码 NODESEEK2026 享受 6.77% 折扣。

关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工的方案、优惠和教程。我们不销售主机,不提供技术服务。

新手必读
搬瓦工优惠码

NODESEEK2026(优惠 6.77%)

购买时填入即可抵扣。