一、kamiFaka
一款基于VUE3.0的高颜值卡密发卡系统,特别适合虚拟商品、知识付费等。
项目地址:Baiyuetribe/kamiFaka: 一款基于VUE3.0的高颜值卡密发卡系统,特别适合虚拟商品、知识付费等。
快速搭建体验
# 安装命令 这个镜像只能运行在linux/amd64架构的CPU
#该启动方式,只适合用来快速体验,生产环境中不适用
docker run --name kmfaka -itd -p 8089:8000 baiyuetribe/kamifaka:latest后台地址/admin,默认管理员admin@qq.com 123456
二、dujiaoka
独角数卡(自动售货系统)-开源站长自动化售货解决方案、高效、稳定、快速!
项目地址:assimon/dujiaoka: 🦄独角数卡(自动售货系统)-开源站长自动化售货解决方案、高效、稳定、快速
docker compose方式部署
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创建工作目录
cd 到用户的家目录下
mkdir dujiaoka;cd dujiaoka
#再创建子目录
mkdir storage uploads
#新增文件
touch env.conf
#添加权限
chmod 777 storage uploads env.conf新建docker-compose.yml
vim docker-compose.ymlservices:
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:
- 8089:80 # 映射容器的 80 端口到主机的 8089 端口
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 数据持久化
yml文件中,注意:首次启动务必设置INSTALL=true,完成网页端安装后再将其改为false!
编辑env配置文件
vim env.confAPP_NAME=独角数卡 # 应用名称
APP_ENV=local # 环境配置,local表示本地开发环境
APP_KEY=base64:hDVkYhfkUjaePiaI1tcBT7G8bh2A8RQxwWIGkq7BO18= # 应用加密密钥,确保应用的安全性
APP_DEBUG=true # 是否开启调试模式,true表示开启
APP_URL=http://1.1.1.1 # 你的域名,替换为你的实际域名
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
#CACHE_DRIVER=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 ps
#查看日志
docker compose logs 访问前台页面进行安装
云服务器控制台放开8089。
后台路径
/admin默认管理员账号
admin默认管理员密码
admin
github项目中的docker方式搭建
(以下可不看,还留着的原因是留个折腾过程的记录)
创建工作目录
mkdir -p /opt/dujiaoka
cd /opt/dujiaoka下载项目
将dujiaoka项目zip文件下载到服务器,并解压到/opt/dujiaoka
wget https://github.com/assimon/dujiaoka/archive/refs/heads/master.zip
#解压
apt-get install unzip -y
unzip master.zip
#移动解压后的文件到我们准备好的目录下
mv dujiaoka-master/* ./
mv dujiaoka-master/.* ./数据库配置
我这里使用已有的mysql数据库
#查看数据库密码
cat /opt/halo/docker-compose.yaml|grep WORD
#进入容器,连接数据库
docker exec -it halo-halodb-1 /bin/bash
mysql -uroot -p-- 创建用户 dujiaoka密码也是dujiaoka并允许从任意IP登录
CREATE USER 'dujiaoka'@'%' IDENTIFIED BY 'dujiaoka';
-- 授权 dujiaoka管理 dujiaoka数据库
GRANT ALL PRIVILEGES ON dujiaoka.* TO 'dujiaoka'@'%';
-- 刷新权限
FLUSH PRIVILEGES;修改配置文件
#备份文件
cp .env .env_back
#编辑文件
vi .env
#创建配置文件,按照自己需求填写
APP_NAME=177857
APP_ENV=local
APP_KEY=base64:BT7G8bh2A8RQxwWIGkq7BO18hDVkYhfkUjaePiaI1tc=
APP_DEBUG=flase
#8089对应容器中的80端口
APP_URL=http://8.137.36.85:8089
LOG_CHANNEL=stack
# 数据库配置
DB_CONNECTION=mysql
DB_HOST=rongtech.top
DB_PORT=3306
DB_DATABASE=dujiaoka
DB_USERNAME=dujiaoka
DB_PASSWORD=dujiaoka
# redis配置
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=
REDIS_PORT=6379
BROADCAST_DRIVER=log
SESSION_DRIVER=file
SESSION_LIFETIME=120
# 缓存配置
# file为磁盘文件 redis为内存级别
# redis为内存需要安装好redis服务端并配置
CACHE_DRIVER=file
# 异步消息队列
# sync为同步 redis为异步
# 使用redis异步需要安装好redis服务端并配置
QUEUE_CONNECTION=redis
# 后台语言
## zh_CN 简体中文
## zh_TW 繁体中文
## en 英文
DUJIAO_ADMIN_LANGUAGE=zh_CN
# 后台登录地址
ADMIN_ROUTE_PREFIX=/admin创建Docker-compose.yml
#备份原来的docker-compose.yml文件
cp docker-compose.yml docker-compose.ymlback
#编辑docker-compose.yml文件,写入下面的内容
vi docker-compose.ymlversion: "2.2"
services:
web:
build: .
container_name: dujiaoka
ports:
- "8089:80"
- "9000:9000"
volumes:
# 增加此行,则将环境信息进行复制到容器,请确保你存在该文件
- /opt/dujiaoka/.env:/app/.env
# 增加此行,避免每次重新创建容器都需要初始化
- /opt/dujiaoka/install.lock:/app/install.lock
# 增加此行,确保将上传的资源映射出来,避免容器重新创建后图片不在了
- /opt/dujiaoka/public/uploads:/app/public/uploads
environment:
WEB_DOCUMENT_ROOT: "/app/public"
TZ: Asia/Shanghai
tty: true
restart: always启动容器
最后启动容器。
docker compose up报错1如下:

报错1原因是因为拉取镜像超时,配置镜像加速
sudo mkdir -p /etc/docker
sudo vi /etc/docker/daemon.json
#以下是daemon.json文件内容
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://docker.1panel.live",
"https://hub-mirror.c.163.com"
]
}
#文件daemon.json内容结束
systemctl restart docker报错2:
Attaching to dujiaoka
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/dujiaoka/.env" to rootfs at "/app/.env": mount src=/dujiaoka/.env, dst=/app/.env, dstFd=/proc/thread-self/fd/30, flags=MS_BIND|MS_REC: not a directory: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
报错2原因是因为我使用项目提供的docker-compose.yml文件,没做任何改动,导致报错。
访问信息
云服务器控制台放开8089 和9000端口。
后台路径
/admin默认管理员账号
admin默认管理员密码
admin