Snipe-IT Docker环境变量配置详解
2025-07-06 04:10:43作者:宣聪麟
概述
Snipe-IT是一款开源的IT资产管理解决方案,使用Docker部署时需要通过环境变量配置各项参数。本文将深入解析docker-secrets.env文件中的关键配置项,帮助用户正确配置Snipe-IT的Docker环境。
基础应用配置
核心参数
APP_ENV=develop
APP_DEBUG=false
APP_KEY=Change_this_key_or_snipe_will_get_ya
APP_URL=http://127.0.0.1:32782
APP_TIMEZONE=US/Pacific
APP_LOCALE=en
APP_ENV
:设置应用环境,develop为开发环境,production为生产环境APP_DEBUG
:调试模式开关,生产环境必须设为falseAPP_KEY
:应用加密密钥,必须修改为随机字符串APP_URL
:应用访问URL,必须与实际部署地址一致APP_TIMEZONE
:时区设置,建议根据实际位置调整APP_LOCALE
:默认语言设置
数据库配置
DB_CONNECTION=mysql
DB_PREFIX=null
DB_DUMP_PATH='/usr/bin'
DB_CONNECTION
:数据库类型,支持mysql/pgsql/sqlite等DB_PREFIX
:表前缀,null表示不使用前缀DB_DUMP_PATH
:数据库备份工具路径
邮件服务器配置
MAIL_MAILER=smtp
MAIL_TLS_VERIFY_PEER=${MAIL_TLS_VERIFY_PEER}
MAIL_FROM_ADDR=${MAIL_ENV_FROM_ADDR}
MAIL_FROM_NAME=${MAIL_ENV_FROM_NAME}
MAIL_MAILER
:邮件驱动,支持smtp/mail/sendmail等- 其他邮件参数使用环境变量注入,提高安全性
图像处理库
IMAGE_LIB=gd
支持gd或imagick两种图像处理库,gd是默认选择,兼容性更好
会话配置
SESSION_LIFETIME=12000
EXPIRE_ON_CLOSE=false
ENCRYPT=false
COOKIE_NAME=snipeit_session
COOKIE_DOMAIN=null
SECURE_COOKIES=false
SESSION_LIFETIME
:会话有效期(分钟)EXPIRE_ON_CLOSE
:浏览器关闭后是否保持会话SECURE_COOKIES
:生产环境建议设为true
缓存配置
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
- 默认使用文件缓存和会话存储
- 生产环境建议使用redis等更高效的驱动
最佳实践建议
- 生产环境必须修改APP_KEY并保持其机密性
- 邮件配置建议使用实际SMTP服务器参数
- 数据库连接参数应通过Docker secrets管理
- 生产环境应将APP_DEBUG设为false
- 考虑使用.env文件管理敏感配置而非直接写入docker-compose
通过合理配置这些环境变量,可以确保Snipe-IT在Docker环境中稳定运行并发挥最佳性能。