前言
在这篇教程中,我们将通过 Docker 部署独角数卡(Dujiaoka),这是一个功能强大的自动售货系统,支持在线管理和支付功能。通过使用飞牛云 NAS 或者 VPS 服务器,我们可以轻松地搭建一个高效、可靠的自动售货平台。Docker 的容器化技术将确保系统的部署过程简便、高效,并能确保跨平台的兼容性。
让我们一步步来看如何通过 Docker 配置和部署 Dujiaoka 系统,快速实现自动化售货服务。
项目简介
🦄独角数卡(自动售货系统)-开源站长自动化售货解决方案、高效、稳定、快速!🚀🚀🎉🎉
项目图片
主要功能
开源式站长自动化售货解决方案
系统优势
- 采用业界流行的laravel框架,安全及稳定性提升。
- 支持自定义前端模板功能
- 支持国际化多语言包(需自行翻译)
- 代码全部开源,所有扩展包采用composer加载,代码所有内容可溯源!
- 长期技术更新支持!
支付接口已集成
- 支付宝当面付
- 支付宝PC支付
- 支付宝手机支付
- payjs微信扫码
- Paysapi(支付宝/微信)
- 码支付(QQ/支付宝/微信)
- 微信企业扫码支付
- Paypal支付(默认美元)
- V免签支付
- 全网易支付支持(通用彩虹版)
- stripe
部署方法
使用Docker安装
本教程使用docker的方式安装部署,简单便捷
准备条件
1)一台服务器
我们使用莱卡云VPS和飞牛云NAS来演示
需要vps的可以看以下信息
莱卡云官网
2)本项目使用到的开源项目
https://github.com/assimon/dujiaoka
目前11.1K stars
本教程参考的docker镜像
https://github.com/Apocalypsor/dujiaoka-docker
更多功能或者二次修改可以访问开源项目地址
3)域名(可选)
域名可以根据自己的需求绑定
① VPS部署
一、Docker环境部署
在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04
==推荐直接用一键脚本==
docker安装脚本
bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)
docker-compose安装脚本
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
二、创建docker-compose.yml文件
登录服务器使用root账户执行以下步骤
创建一个目录,并进入此目录
mkdir dujiaoka;cd dujiaoka
在当前目录新增2个子目录
mkdir storage uploads
在当前目录新增1个空文件
touch env.conf
给以上文件添加777权限,避免后面出现权限问题
chmod 777 storage uploads env.conf
然后再新建docker-compose.yml
vim docker-compose.yml
services:
faka:
image: ghcr.io/apocalypsor/dujiaoka:latest # 使用 Dujiaoka 的最新镜像,国内服务器可以用 hkccr.ccs.tencentyun.com/apocalypsor/dujiaoka:latest
container_name: faka # 容器名称设置为 faka
environment:
- INSTALL=true # 初次启动时必须设置 INSTALL=true,安装完成后改为 false
volumes:
- ./env.conf:/dujiaoka/.env # 将本地的 env.conf 文件挂载到容器中的 .env 文件
- ./uploads:/dujiaoka/public/uploads # 将本地的 uploads 文件夹挂载到容器中的 public/uploads 文件夹
- ./storage:/dujiaoka/storage # 将本地的 storage 文件夹挂载到容器中的 storage 文件夹
ports:
- 8033:80 # 映射容器的 80 端口到主机的 8033 端口
restart: always # 容器异常退出后会自动重启
db:
image: mariadb:focal # 使用 MariaDB 的 Focal 版本
container_name: faka-data # 容器名称设置为 faka-data
restart: always # 容器异常退出后会自动重启
environment:
- MYSQL_ROOT_PASSWORD=dujiaoka # 设置 MySQL root 用户密码
- MYSQL_DATABASE=dujiaoka # 设置默认数据库名称为 dujiaoka
- MYSQL_USER=dujiaoka # 设置 MySQL 用户为 dujiaoka
- MYSQL_PASSWORD=dujiaoka # 设置 MySQL 用户密码为 dujiaoka
volumes:
- ./data:/var/lib/mysql # 将本地的 data 文件夹挂载到容器中的 /var/lib/mysql 目录,用于数据持久化
redis:
image: redis:alpine # 使用 Redis 的 Alpine 版本
container_name: faka-redis # 容器名称设置为 faka-redis
restart: always # 容器异常退出后会自动重启
volumes:
- ./redis:/data # 将本地的 redis 文件夹挂载到容器中的 /data 目录,用于 Redis 数据持久化
然后再给 env.conf文件写配置
vim env.conf
APP_NAME=独角数卡 # 应用名称
APP_ENV=local # 环境配置,local表示本地开发环境
APP_KEY=base64:hDVkYhfkUjaePiaI1tcBT7G8bh2A8RQxwWIGkq7BO18= # 应用加密密钥,确保应用的安全性
APP_DEBUG=true # 是否开启调试模式,true表示开启
APP_URL=http://dujiaoka.yyzq.cf # 你的域名,替换为你的实际域名
LOG_CHANNEL=stack # 日志通道,stack表示使用堆栈方式记录日志
DB_CONNECTION=mysql # 数据库配置,使用mysql数据库
DB_HOST=127.0.0.1 # 数据库主机地址,通常为本地地址
DB_PORT=3306 # 数据库端口,默认为3306
DB_DATABASE=dujiaoka # 数据库名称
DB_USERNAME=dujiaoka # 数据库用户名
DB_PASSWORD=dujiaoka # 数据库密码
REDIS_HOST=127.0.0.1 # Redis配置,指定Redis主机地址
REDIS_PASSWORD= # Redis密码(如果有的话)
REDIS_PORT=6379 # Redis端口,默认为6379
BROADCAST_DRIVER=log # 广播驱动,使用日志方式
SESSION_DRIVER=file # 会话存储方式,file表示使用文件存储会话
SESSION_LIFETIME=120 # 会话生命周期,单位为分钟
CACHE_DRIVER=file # 缓存配置,file为磁盘文件缓存,redis为内存缓存,需要安装并配置Redis
QUEUE_CONNECTION=redis # 异步消息队列配置,sync为同步,redis为异步,使用redis异步需要安装并配置Redis
DUJIAO_ADMIN_LANGUAGE=zh_CN # 后台语言设置,zh_CN表示简体中文,zh_TW表示繁体中文,en表示英文
ADMIN_ROUTE_PREFIX=/admin # 后台登录地址前缀
三、执行容器运行命令
docker-compose up -d #运行容器
docker-compose ps #查看是否开启成功
==正常启动如下所示==
docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
faka ghcr.io/apocalypsor/dujiaoka:latest "/start.sh" faka 38 minutes ago Up 38 minutes 0.0.0.0:8033->80/tcp, [::]:8033->80/tcp
faka-data mariadb:focal "docker-entrypoint.s…" db 38 minutes ago Up 38 minutes 3306/tcp
faka-redis redis:alpine "docker-entrypoint.s…" redis 38 minutes ago Up 38 minutes 6379/tcp
四、打开web页面使用
成功以后需要打开自己相应的端口8033)防火墙就可以web端访问了
http://ip:8033
初始化
初始化成功
默认用户名密码
admin
admin
请及时修改
后台地址
http://ip:8033/admin
登录成功
然后需要将docker-compose.yml中的INSTALL改为fslse之后再重启容器
- INSTALL=false # 初次启动时必须设置 INSTALL=true,安装完成后改为 false
停止容器
docker-compose down
修改参数
vim docker-compose.yml
重新启动即可
docker-compose up -d
② 飞牛云NAS部署
新建项目
dujiaoka
其他步骤参考VPS的教程
正常启动即可
注意目录和文件的权限即可
其他配置后面有时间可以在出视频介绍
绑定域名
如需绑定域名的自行绑定
绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch
==有任何问题可以直接留言或者问我==
==有任何问题可以直接留言或者问我==
==有任何问题可以直接留言或者问我==
欢迎关注我们的微信公众号!