本文最后更新于 2024-06-30,

若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益, 请联系我 删除。

本站只有Telegram群组为唯一交流群组, 点击加入

文章内容有误?申请成为本站文章修订者或作者? 向站长提出申请

1719692614356.webp

介绍

系统优势

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

支付接口已集成

  • 支付宝当面付
  • 支付宝PC支付
  • 支付宝手机支付
  • payjs微信扫码.
  • Paysapi(支付宝/微信).
  • 码支付(QQ/支付宝/微信)
  • 微信企业扫码支付
  • Paypal支付(默认美元)
  • V免签支付
  • 全网易支付支持(通用彩虹版)
  • stripe

附上GitHub上的免责声明:

  • 独角数卡程序是免费开源的产品,仅用于学习交流使用!
  • 不可用于任何违反中华人民共和国(含台湾省)或使用者所在地区法律法规的用途。
  • 因为作者即本人仅完成代码的开发和开源活动(开源即任何人都可以下载使用),从未参与用户的任何运营和盈利活动。
  • 且不知晓用户后续将程序源代码用于何种用途,故用户使用过程中所带来的任何法律责任即由用户自己承担。

项目展示

官方unicorn模板

1719693075170.webp

luna模板

1719693084329.webp

hyper模板

1719693099096.webp
1719693101409.webp
1719693103837.webp
1719693106086.webp
1719693108685.webp

项目地址:https://github.com/assimon/dujiaoka
Docker镜像地址:https://hub.docker.com/r/stilleshan/dujiaoka

安装Docker🐳

利用Docker-compose搭建,易于更新

先建立一个文件夹

sudo -i

mkdir -p /root/data/docker_data/shop

cd /root/data/docker_data/shop

mkdir storage uploads

chmod -R 777 storage uploads
# 创建数据目录用于挂载

touch env.conf

chmod -R 777 env.conf
vim docker-compose.yml

docker-compose填入以下内容:

version: "3"

services:
  web:
    image: stilleshan/dujiaoka
    environment:
        # - INSTALL=false
        - INSTALL=true
        # - MODIFY=true
    volumes:
      - ./env.conf:/dujiaoka/.env
      - ./uploads:/dujiaoka/public/uploads
      - ./storage:/dujiaoka/storage
    ports:
      - 8090:80         # 8090可以改成任意服务器没有使用过的端口,80不要修改
    restart: always

  db:
    image: mariadb:focal
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=changeyourpassword
      - MYSQL_DATABASE=dujiaoka
      - MYSQL_USER=dujiaoka
      - MYSQL_PASSWORD=changeyourpassword
    volumes:
      - ./mysql:/var/lib/mysql

  redis:
    image: redis:alpine
    restart: always
    volumes:
      - ./redis:/data

changeyourpassword可以修改成自己的密码。

修改好之后,注意切换成英文输入法,然后按一下 esc,然后 :wq 保存退出。

vim env.conf
APP_NAME=Poi的商店
APP_ENV=local
APP_KEY=base64:rKwRuI6eRpCw/9e2XZKKGj/Yx3iZy5e7+FQ6+aQl8Zg=
APP_DEBUG=true
APP_URL=https://你的域名

LOG_CHANNEL=stack

# 数据库配置
DB_CONNECTION=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=dujiaoka
DB_USERNAME=dujiaoka
DB_PASSWORD=changeyourpassword

# redis配置
REDIS_HOST=redis
REDIS_PASSWORD=
REDIS_PORT=6379

BROADCAST_DRIVER=log
SESSION_DRIVER=file
SESSION_LIFETIME=120

# 缓存配置
# file为磁盘文件  redis为内存级别
# redis为内存需要安装好redis服务端并配置
CACHE_DRIVER=redis

# 异步消息队列
# sync为同步  redis为异步
# 使用redis异步需要安装好redis服务端并配置
QUEUE_CONNECTION=redis

# 后台语言
## zh_CN 简体中文
## zh_TW 繁体中文
## en    英文
DUJIAO_ADMIN_LANGUAGE=zh_CN

# 后台登录地址
ADMIN_ROUTE_PREFIX=/admin

# 是否开启https (前端开启了后端也必须为true)
# 后台登录出现0err或者其他登录异常问题,大概率是开启了https而后台没有开启,把下面的false改为true即可
ADMIN_HTTPS=true

修改好之后,注意切换成英文输入法,然后按一下 esc,然后 :wq 保存退出。

运行

docker-compose up -d

我们现在可以输入 http://ip:8090/访问了。

更新

cd /root/data/docker_data/shop

docker-compose pull

docker-compose up -d

卸载

cd /root/data/docker_data/shop # 进入docker-compose所在的文件夹

docker-compose down    # 停止容器,此时不会删除映射到本地的数据

rm -rf /root/data/docker_data/shop # 完全删除映射到本地的数据

反向代理

参考教程:安装及使用

⚠️Nginx Proxy Manager(以下简称NPM)会用到80、443端口,所以本机不能占用(比如原来就有Nginx)

互联网使用请确保完成了域名解析

这边也贴一个宝塔面板的反代配置

    location / {
      proxy_pass http://127.0.0.1:8090/;       # 注意改成你实际使用的端口
      rewrite ^/(.*)$ /$1 break;
      proxy_redirect off;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Upgrade-Insecure-Requests 1;
      proxy_set_header X-Forwarded-Proto https;
    }

此方法对 90% 的反向代理都能生效,然后就可以用域名来安装访问了。

使用教程

成功登录之后,我们填写信息,

注意数据库地址填 db,Redis填 redis

填写完成后,点击保存。

提示默认的账户名和密码都是 admin

此时,我们先停止容器。

docker-compose down

接着我们修改一下 docker-compose.yml以及 env.conf里面的内容。

分别把 - INSTALL=true 改成 - INSTALL=false

APP_DEBUG=true改成 APP_DEBUG=false

之后运行:

docker-compose up -d 

然后在域名后面加上 /admin,输入默认的账户密码 admin就可以正常登录后台了!

记得改一下用户名和密码!

1719693488810.webp

常见问题

常见问题集锦:https://github.com/assimon/dujiaoka/wiki/problems