标签搜索

目 录CONTENT

文章目录

飞牛云NAS或者VPS使用Docker部署独角数卡(自动售货系统)

yyzq
2025-09-19 / 0 评论 / 1 点赞 / 26 阅读 / 1,968 字

前言

在这篇教程中,我们将通过 Docker 部署独角数卡(Dujiaoka),这是一个功能强大的自动售货系统,支持在线管理和支付功能。通过使用飞牛云 NAS 或者 VPS 服务器,我们可以轻松地搭建一个高效、可靠的自动售货平台。Docker 的容器化技术将确保系统的部署过程简便、高效,并能确保跨平台的兼容性。16-9-1758269467322
让我们一步步来看如何通过 Docker 配置和部署 Dujiaoka 系统,快速实现自动化售货服务。

项目简介

🦄独角数卡(自动售货系统)-开源站长自动化售货解决方案、高效、稳定、快速!🚀🚀🎉🎉

项目图片

image-1758266533022
image-1758266557016
image-1758266569185

主要功能

开源式站长自动化售货解决方案

系统优势

  1. 采用业界流行的laravel框架,安全及稳定性提升。
  2. 支持自定义前端模板功能
  3. 支持国际化多语言包(需自行翻译)
  4. 代码全部开源,所有扩展包采用composer加载,代码所有内容可溯源!
  5. 长期技术更新支持!

支付接口已集成

  1. 支付宝当面付
  2. 支付宝PC支付
  3. 支付宝手机支付
  4. payjs微信扫码
  5. Paysapi(支付宝/微信)
  6. 码支付(QQ/支付宝/微信)
  7. 微信企业扫码支付
  8. Paypal支付(默认美元)
  9. V免签支付
  10. 全网易支付支持(通用彩虹版)
  11. stripe

部署方法

使用Docker安装

本教程使用docker的方式安装部署,简单便捷
164b6ac419e23bc5390dc46601a202bf

准备条件

1)一台服务器

我们使用莱卡云VPS和飞牛云NAS来演示

需要vps的可以看以下信息
莱卡云官网

2)本项目使用到的开源项目

https://github.com/assimon/dujiaoka
目前11.1K stars
image-1758266858958
本教程参考的docker镜像
https://github.com/Apocalypsor/dujiaoka-docker
image-1758266922760
更多功能或者二次修改可以访问开源项目地址

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

初始化
image-1758268533834

初始化成功
image-1758268597373

默认用户名密码

admin
admin

请及时修改
后台地址

http://ip:8033/admin

登录成功
image-1758268695764

然后需要将docker-compose.yml中的INSTALL改为fslse之后再重启容器

  • INSTALL=false # 初次启动时必须设置 INSTALL=true,安装完成后改为 false

停止容器

docker-compose down

修改参数

vim docker-compose.yml

重新启动即可

docker-compose up -d

② 飞牛云NAS部署

新建项目

dujiaoka

其他步骤参考VPS的教程
正常启动即可
image-1758269062778
注意目录和文件的权限即可

其他配置后面有时间可以在出视频介绍

绑定域名

如需绑定域名的自行绑定

视频教程

B站

YouTube

绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch

有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我

欢迎关注我们的微信公众号!
微信公众号

1

评论区