十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Snipe-IT 开源资产管理:10 步 Docker 部署实战,半小时搭好企业 IT 资产台账

Snipe-IT 开源资产管理:10 步 Docker 部署实战,半小时搭好企业 IT 资产台账 Snipe-IT 开源资产管理10 步 Docker 部署实战半小时搭好企业 IT 资产台账【免费下载链接】snipe-itA free open source IT asset/license management system项目地址: https://gitcode.com/GitHub_Trending/sn/snipe-it张工的笔记本是几号买的合同在哪Windows 授权还剩几台——如果你常被这类问题问住说明该给公司 IT 资产建台账了。Snipe-IT 就是干这个的开源系统免费、自带 Web 界面、内置完整的资产领用/归还/维修/折旧流程还能管软件许可证。今天这份实战指南带你用 Docker 把它跑起来从零到能用全程可复制。️ 60 秒速览它到底解决什么问题先搞清楚买它是为了什么。Snipe-IT 是一款基于 Laravel 的 IT 资产与许可证管理系统核心就三件事维度说明管什么电脑、服务器、配件等硬件资产以及软件许可证解决什么谁在用、在哪、何时购买、是否折旧、何时到期给谁用中小团队 IT 管理员、运维、行政负责资产的人员怎么跑Web 应用浏览器访问推荐 Docker 部署技术栈PHP / Laravel MySQL(MariaDB)亮点能力扫码领用、CSV 批量导入、审计追踪、邮件提醒、REST API说白了它是一张活的公司资产户口本每台设备从采购入库到报废全程留痕告别 Excel 表格改来改去、版本混乱的旧日子。✅ 小结如果贵司有设备常找不到、授权数不清、维修没记录任一痛点Snipe-IT 就值得一试。 开工前检查单逐项核对再动手先别急着敲命令把下面几条过一遍能省掉后面 80% 的坑服务器/电脑已装Docker与Docker Composedocker --version、docker compose version能输出版本号机器内存 ≥ 2GBLaravel MariaDB 同时跑1GB 会很吃力放行计划使用的外部端口默认8000准备好一个可用的邮箱 SMTP 账号可以后配但通知功能依赖它想清楚域名或访问地址APP_URL要填它别用默认值糊弄⚠️ 注意Snipe-IT 是 Web 系统不是桌面软件没有 exe全靠浏览器访问部署目标是能打开网页。 首次跑通三行命令启动五分钟见界面下面是最短路径跟着走就能看到登录页。第一步拉取代码与配置文件# 克隆项目仓库地址固定直接用 git clone https://gitcode.com/GitHub_Trending/sn/snipe-it cd snipe-it # 复制环境模板 cp docker/docker.env .env第二步改三个必填项打开.env至少改这三处否则容器起不来或登录报错# 应用密钥必填。32 位随机串可用下一条命令生成 APP_KEYbase64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # 数据库账号密码自己定但要和后面 MariaDB 一致 DB_DATABASEsnipeit DB_USERNAMEsnipeit_user DB_PASSWORD你的强密码 MYSQL_ROOT_PASSWORD另一个强密码 # 访问地址换成你的服务器 IP 或域名别留 localhost APP_URLhttp://你的IP:8000 # 对外端口默认 8000想换就改 APP_PORT APP_PORT8000 提示APP_KEY用下面的命令生成base64:前缀要一起粘进.env这一步缺了容器会立刻退出# 不启动容器只生成密钥Compose 会自动构建镜像等待时间取决于网络 docker compose run --rm app php artisan key:generate --show第三步启动整套服务# 后台拉起 app db 两个容器 docker compose up -d # 看启动状态等 db 变 healthy、app 不再重启 docker compose ps # 盯日志看到 Supervisord started successfully 就绪 docker compose logs -f app启动完成后浏览器访问http://你的IP:8000用默认账号登录项值用户名adminexample.com密码password 警告登录后第一时间在右上角改掉管理员密码这组默认凭据是公开的等于家门没锁。✅ 小结最小路径 拉代码 → 改.env三个必填项 →up -d→ 登录改密。到此系统已经能用。⚙️ 进阶定制让它真正好用的六个配置跑起来只是开始下面这些配置决定它是玩具还是生产工具。1. 数据持久化默认就有但要懂原理docker-compose.yml里声明了db_data和storage两个数据卷数据库文件、上传的图片、备份全在里面。容器删了重建数据还在——这正是 Docker 方案比裸装省心的原因。想映射到宿主机目录方便备份把 volumes 改成volumes: - ./data/db:/var/lib/mysql - ./data/storage:/var/lib/snipeit2. 放大上传限制不配的后果传大图/文档直接报错默认 PHP 上传上限很小在.env追加一行再docker compose restart appPHP_UPLOAD_LIMIT100M容器启动脚本会自动改写php.ini里的upload_max_filesize和post_max_size不用进容器手改。3. 邮件通知不配的后果领用确认、到期提醒全部哑火MAIL_MAILERsmtp MAIL_HOSTsmtp.你的域名.com MAIL_PORT587 MAIL_USERNAME你的邮箱 MAIL_PASSWORD你的邮箱密码 MAIL_FROM_ADDR发件地址 MAIL_FROM_NAME发件人名称配完用内置命令自测通了再上线docker compose exec app php artisan snipeit:test-email 收件人example.com4. 定时任务不配的后果到期提醒永远不会触发系统靠 cron 驱动许可证到期、资产审计、库存预警等扫描任务容器镜像里已内置调度确保容器以restart: unless-stopped常驻即可不要手动docker stop后长期不拉起。5. CSV 批量导入新手上线最快路径手工录几百台设备会疯。用模板sample_csvs/assets-sample.csv参照表头资产标签、型号、分类、供应商、位置、购买日期、价格……整理数据在管理 → 导入上传即可。要点先建好分类/厂商/型号/用户再导入资产否则导入会因外键找不到而失败。6. HTTPS生产环境必须做把证书放到 storage 卷的ssl目录重启容器后启动脚本会自动启用 Apache SSL# 证书放入持久化目录容器内路径 /var/lib/snipeit/ssl/ docker compose exec app mkdir -p /var/lib/snipeit/ssl docker compose cp 你的证书.crt app:/var/lib/snipeit/ssl/snipeit-ssl.crt docker compose cp 你的私钥.key app:/var/lib/snipeit/ssl/snipeit-ssl.key docker compose restart app✅ 小结持久化、上传限制、邮件、定时、CSV、HTTPS 六件套是能用到好用的分水岭。️ 高频坑位四个常见问题的症状—原因—解法坑 1容器一启动就退出症状docker compose ps里 app 一直在 Restarting。原因八成是APP_KEY没填或格式不对启动脚本检测不到密钥直接 exit。解法docker compose run --rm app php artisan key:generate --show重新生成粘回.env后docker compose up -d重启。坑 2页面能开但报数据库连接失败症状白屏或 500日志提示SQLSTATE[HY000]。原因.env里的DB_*与 Compose 传给 MariaDB 的账号密码对不上或 db 还没健康就启动 app。解法核对四个DB_*变量与MYSQL_*一致docker compose ps确认 db 为 healthy必要时docker compose down后重新up -d。坑 3登录提示密码错误但明明没错症状用刚导入的用户登录失败。原因多半是 APP_KEY 变动导致旧密码哈希失效或导入时用户名/邮箱字段没对上。解法别在初始化后再随意换 APP_KEY导入前检查 CSV 的用户名字段实在不行用管理员在后台重置该用户密码。坑 4导入 CSV 后资产数量对不上症状提示导入成功但列表少几条。原因表头字段名与模板不一致或依赖的厂商/型号/位置尚未创建。解法严格对照sample_csvs/assets-sample.csv的表头先建基础数据再导入用下载导入结果查看被跳过的行。 长期运营升级、备份与日常三件事备份——别等丢数据才后悔备份分两半数据库 上传文件。容器里可直接用内置备份# 生成完整备份数据库文件存到 storage/dumps docker compose exec app php artisan backup:run # 看备份清单 docker compose exec app php artisan backup:list想自动化把backup:run挂进宿主机 crontab再定期把./data/storage/dumps拷走即可。恢复时把备份文件放回dumps目录执行docker compose exec app php artisan snipeit:restore升级——四步走先备份再动手# 1. 备份 docker compose exec app php artisan backup:run # 2. 拉最新代码Docker 场景主要是更新镜像 docker compose pull # 3. 重启 docker compose up -d # 4. 数据库迁移启动脚本会自动执行失败时手动补跑 docker compose exec app php artisan migrate --force 提示升级后如果页面样式错乱清一下缓存docker compose exec app php artisan config:clear docker compose exec app php artisan cache:clear日常三件事看日志docker compose logs -f app报错先来这里翻别瞎猜。看资源docker stats内存长期打满就考虑加配置。定期盘点用系统的审计功能抽查设备核对账实相符这才是资产管理的本质。 收尾推动从今天开始记账Snipe-IT 的价值不在功能多而在坚持用。建议你这样落地今天跑通 Docker 部署登录改密本周内建好厂商、分类、状态标签和第一批用户用sample_csvs模板导入现有设备完成首次盘点配好邮件把领用确认跑起来每月做一次审计抽查季度做一次备份演练。图Snipe-IT 的设备维护管理界面故障记录、维修跟踪一目了然图维修流程管理支持登记、跟踪与成本核算资产管理的敌人从来不是工具而是下次再说。项目代码就在手边复制、配置、启动——半小时后你就有了一张公司资产全景图。动起来别再让资产在 Excel 里流浪。【免费下载链接】snipe-itA free open source IT asset/license management system项目地址: https://gitcode.com/GitHub_Trending/sn/snipe-it创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表