赞
踩
# 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]
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
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
在.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://snipe-it.readme.io/docs/docker
发送邮件报错:535, ‘Error: authentication failed, system busy’
Snipe-IT电子邮件配置错误 - 邮件无法发送
Telnet SMTP协议关于“535 Error: authentication failed“解决思路
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。