群晖 Docker 之 Chemex [IT资产管理系统] 部署

必备条件
Web Station
phpMyAdmin
MariaDB
部署流程
一、数据库
1、群晖安装Web Station、phpMyadmin、MariaDB
2、MariaDB 启用TCP/IP链接
3、使用phpMyadmin连接MariaDB,创建chemex数据库
账号
- 新增用户账号
- 输入用户名:Chemex
- 勾选创建与用户同名的数据库并授权所有权限
二、Chemex容器部署
方式一、手动部署
1、环境原因,手动下载容器,docker pull celaraze/chemex
2、docker目录下创建Chemex文件夹和Chemex/uploads文件夹,修改uploads权限
3、新增Chemex容器
下载
.env.example,
修改后(见文末)并更名为.env
存储空间:
文件:/docker/Chemex.env
装载路径/var/www/html/laravel/.env
文件夹:/docker/Chemex/uploads
装载路径/var/www/html/laravel/public/uploads
端口设置:
9801
容器端口8000
环境:可变
INSTALL
值true

方式二、Xshell部署
docker目录下创建Chemex文件夹和Chemex/uploads文件夹

三、Chemex配置
Docker容器下执行命令
访问方式
.env.example高亮为修改项,修改后更名
# 欢迎使用 chemex,在您开始之前,请按照指引完成配置
# 基础配置:
### 第一步:数据库配置
#数据库类型,不需要修改(兼容mariadb)
DB_CONNECTION=mysql
# 数据库地址,修改后使用
DB_HOST=192.168.100.250
# 数据库端口号,mysql默认是3306
DB_PORT=3306
# 数据库名称,如果没有此数据库,后续会提示创建,修改后使用
DB_DATABASE=Chemex
# 数据库用户名
DB_USERNAME=Chemex
# 数据库密码,修改后使用
DB_PASSWORD=root
### 第二步:配置HTTPS
### 如果您使用HTTPS协议,请将下面两个参数修改为true
ADMIN_HTTPS=false
### 第三步:配置应用信息
# 应用名称,一般不需要修改
APP_NAME=Chemex
APP_ENV=local
# 修改默认应用地址和站点配置中地址相同配合上传LOGO使用,在站点配置中设置站点地址!
APP_URL=http://192.168.100.250:9801
### 第四步:执行安装命令
# 在项目根目录中执行
php artisan chemex:install
# 高级配置:
# 应用密钥,可以通过执行
php artisan key:generate 重新生成
# 此项影响用户密码,一旦修改,既有的密码将全部失效,请谨慎修改
APP_KEY=base64:aRpYlARLPcqF3VlZ6jrT1vUX4aWzG0xFYriKzLO3zqE=
# 是否开启 DEBUG 模式
# 开启后如果程序出错,将会抛出异常
# 关闭后如果程序出错,将只会给出 HTTP 错误码 500
APP_DEBUG=true
LOG_CHANNEL=stack
BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=redis
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
# 决定了此实例是否以demo运行(部分权限受阻)
ADMIN_DEMO=false