一、使用Docker安装方案
1.安装Docker
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo systemctl start docker
sudo systemctl enable docker
# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
# 将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
2.下载并安装snipe-it
下载
docker pull snipe/snipe-it
#如果您更愿意获取特定版本的 Snipe-IT,请使用您要使用的版本的标签。例如,要使用 5.1.7 版本,您可以使用:
docker pull snipe/snipe-it:v5.1.7
安装
mkdir /opt/snipe-it
cd /opt/snipe-it/
生成密钥
[root@nginx snipe-it]# docker run --rm snipe/snipe-it
Please re-run this container with an environment variable $APP_KEY
An example APP_KEY you could use is:
base64:aAav4mD+sRSfkgDsX7fV6bi19y//NO3WIR8YuaKG3b4=
写入配置文件
vim my_env_file
####################################################
# Mysql Parameters
#MYSQL_ROOT_PASSWORD=YOUR_SUPER_SECRET_PASSWORD
#MYSQL_DATABASE=snipeit
#MYSQL_USER=snipeit
#MYSQL_PASSWORD=YOUR_snipeit_USER_PASSWORD
# Mysql Parameters 数据库地址、端口、数据库、用户和密码
MYSQL_PORT_3306_TCP_ADDR=XXX.XXX.XXX.XXX
MYSQL_PORT_3306_TCP_PORT=3306
MYSQL_DATABASE=snipe_it
MYSQL_USER=snipe_it_db_user
MYSQL_PASSWORD=snipe_it_db_user_password
###################################################
# Email Parameters #使用的QQ邮箱,已经配置成功
# - the hostname/IP address of your mailserver
MAIL_PORT_587_TCP_ADDR=smtp.exmail.qq.com
#the port for the mailserver (probably 587, could be another)
MAIL_PORT_587_TCP_PORT=587
# the default from address, and from name for emails
MAIL_ENV_FROM_ADDR=xxxx@qq.com
MAIL_ENV_FROM_NAME=xxxx@qq.com
# - pick 'tls' for SMTP-over-SSL, 'tcp' for unencrypted
MAIL_ENV_ENCRYPTION=tls
# SMTP username and password
MAIL_ENV_USERNAME=xxxx@qq.com
MAIL_ENV_PASSWORD=nTm9UhvF5L
###################################################
# Snipe-IT Settings
APP_ENV=production
APP_DEBUG=false
APP_KEY=base64:aAav4mD+sRSfkgDsX7fV6bi19y//NO3WIR8YuaKG3b4= # 填入前面生成的密钥
APP_URL=http://192.168.10.10:10001 # 宿主机的地址和端口
APP_TIMEZONE=US/Pacific
APP_LOCALE=zh-CN
# Docker-specific variables
PHP_UPLOAD_LIMIT=100
使用命令行启动
指定配置文件启动
docker run -d -p 10001:80 -v /opt/snipe-it/data:/var/lib/snipeit --name="snipeit" --env-file=/opt/snipe-it/my_env_file snipe/snipe-it
# 挂载图片到本地
-v /opt/snipe-it/data:/var/lib/snipei
使用docker compose启动
version: '3'
services:
snipeIt:
container_name: snipe-it
image: snipe/snipe-it
ports:
- "10001:80"
volumes:
- /opt/snipe-it/data:/var/lib/snipeit
# 使用env文件载入环境变量
env_file:
- my_env_file
networks:
snipeIt-net:
在snipe-ti目录下启动服务
# 已docker-compose为命令
docker-compose up -d
# 已docker组件compose命令启动
docekr compose up -d
3.解决snipe-it使用Docker设置QQ邮箱不生效
在.env
文件中添加如下配置文件
# Email Parameters #使用的QQ邮箱,已经配置成功
# - the hostname/IP address of your mailserver
MAIL_PORT_587_TCP_ADDR=smtp.exmail.qq.com
#the port for the mailserver (probably 587, could be another)
MAIL_PORT_587_TCP_PORT=587
# the default from address, and from name for emails
MAIL_ENV_FROM_ADDR=xxxx@qq.com
MAIL_ENV_FROM_NAME=xxxx@qq.com
# - pick 'tls' for SMTP-over-SSL, 'tcp' for unencrypted
MAIL_ENV_ENCRYPTION=tls
# SMTP username and password
MAIL_ENV_USERNAME=xxxx@qq.com
MAIL_ENV_PASSWORD=nTm9UhvF5L
排查报错原因
邮件无法发送。没有提供额外的错误信息。请检查你的邮件设置和应用日志。
检查你的.env
文件中的电子邮件配置是否与你使用的电子邮件服务正确,该文件位于你的"snipe-it"目录中。[通常在cd /var/www/html/snipe-it
(在你的环境中可能不同,docker启动的文件在cd /var/www/html
)]
检查你的web服务器的防火墙设置 [Ubuntu - 使用命令’sudo ufw status’],这可能会干扰电子邮件的发送。
使用Telnet手动测试电子邮件配置。[telnet your-smtp-server.com your-port
] 例如: telnet smtp.gmail.com 587
。如果成功,你可能会看到以下消息:"220 smtp.gmail.com ESMTP [...]"
,QQ的地址是telnet smtp.exmail.qq.com:587
然后检查Snipe-IT的应用日志,看看是否记录了可能发生的错误。通常在以下位置cd /var/www/html/snipe-it/storage/logs
,Docker启动的在cd /var/www/html/storage/logs
账号密码错误会返回如下错误
腾讯企业邮箱发送邮件报错:
535, ‘Error: authentication failed, system busy’
解决方法:
1.设置 -> 微信绑定 -> 开启安全登录 -> 生成新密码
2.使用生成的新密码替换邮箱登录密码
文章来源:https://www.toymoban.com/news/detail-847165.html
参考资料:
https://snipe-it.readme.io/docs/docker
发送邮件报错:535, ‘Error: authentication failed, system busy’
Snipe-IT电子邮件配置错误 - 邮件无法发送
Telnet SMTP协议关于“535 Error: authentication failed“解决思路文章来源地址https://www.toymoban.com/news/detail-847165.html
到了这里,关于Linux安装Docker安装开源固定资产管理工具snipe-it(QQ邮箱Docker配置成功)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!