当前位置:   article > 正文

Linux安装Docker安装开源固定资产管理工具snipe-it(QQ邮箱Docker配置成功)

开源固定资产管理

一、使用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]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

2.下载并安装snipe-it

下载

docker pull snipe/snipe-it

#如果您更愿意获取特定版本的 Snipe-IT,请使用您要使用的版本的标签。例如,要使用 5.1.7 版本,您可以使用:
docker pull snipe/snipe-it:v5.1.7
  • 1
  • 2
  • 3
  • 4

安装

mkdir /opt/snipe-it

cd /opt/snipe-it/
  • 1
  • 2
  • 3

生成密钥

[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=
  • 1
  • 2
  • 3
  • 4

写入配置文件

vim my_env_file
  • 1
####################################################
# 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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41

使用命令行启动

指定配置文件启动

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
  • 1
# 挂载图片到本地
-v /opt/snipe-it/data:/var/lib/snipei 
  • 1
  • 2
使用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:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

在snipe-ti目录下启动服务

# 已docker-compose为命令
docker-compose up -d

# 已docker组件compose命令启动
docekr compose up -d
  • 1
  • 2
  • 3
  • 4
  • 5

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

排查报错原因

邮件无法发送。没有提供额外的错误信息。请检查你的邮件设置和应用日志。
检查你的.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://snipe-it.readme.io/docs/docker
发送邮件报错:535, ‘Error: authentication failed, system busy’
Snipe-IT电子邮件配置错误 - 邮件无法发送
Telnet SMTP协议关于“535 Error: authentication failed“解决思路

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/808423
推荐阅读
相关标签
  

闽ICP备14008679号