网页打开就能玩!NAS 搭建私人棋牌室,斗地主麻将全支持

网页打开就能玩!NAS 搭建私人棋牌室,斗地主麻将全支持

H5 棋牌游戏:

一款商用版 H5 棋牌游戏,让大家摆脱平台的束缚,无监控、无控制、公平公正,支持手机、电脑、Pad,只要有浏览器就可以玩。

TIP:建议新手严格按教程部署操作,不要盲目修改配置,还有就是着急配置外网访问。

准备

来到 GitHub 地址,下载项目:https://github.com/openinggame/qp

在 NAS 上创建 openinggame 文件夹,将上面下载的压缩包放到里面

解压 ZIP 文件,整理一下里面的内容,只保留这三个文件就行了

解压上面两个 tar.gz 压缩包,整理成下面样子

TIP:文件夹 mongo_data 内部

TIP:文件夹 mysql 内部

安装

创建项目,选择上面 openinggame 目录,导入 docker-compose.yml 模板

原来的模板,需要按实际需求修改

version: "3.0"

services:

web:

container_name: web0

image: openinggame/web:v1

ports:

- "80:80"

environment:

- API_HOST=

networks:

- game

depends_on:

- server

server:

container_name: server0

image: openinggame/server:v1

ports:

- "81:81"

networks:

- game

depends_on:

- etcd

- kafka

- redis1

- mysql

- mongodb

mysql:

image: mysql:8.0.23

container_name: mysql0

command:

--default-authentication-plugin=mysql_native_password

--character-set-server=utf8mb4

--collation-server=utf8mb4_general_ci

restart: unless-stopped

environment:

MYSQL_ROOT_PASSWORD: root

volumes:

- /data/mysql:/var/lib/mysql

- mysqlconf:/etc/mysql/conf.d

networks:

- game

redis0:

container_name: redis0

image: redis:latest

volumes:

- redisdata0:/data

command: redis-server --requirepass 123456

networks:

- game

depends_on:

- etcd

redis1:

container_name: redis1

image: redis:latest

volumes:

- redisdata1:/data

command: redis-server --requirepass 123456

networks:

- game

depends_on:

- etcd

redis2:

container_name: redis2

image: redis:latest

volumes:

- redisdata2:/data

command: redis-server --requirepass 123456

networks:

- game

depends_on:

- mysql

- etcd

- redis1

zookeeper:

container_name: zookeeper

image: wurstmeister/zookeeper

restart: always

networks:

- game

kafka:

container_name: kafka0

image: wurstmeister/kafka:2.12-2.3.0

environment:

- KAFKA_BROKER_ID=0

- KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181

- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka0:9092

- KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092

volumes:

- /var/run/docker.sock:/var/run/docker.sock

restart: always

depends_on:

- zookeeper

networks:

- game

etcd:

image: quay.io/coreos/etcd:v3.2.32

container_name: etcd0

environment:

ETCDCTL_API: 3

command:

- etcd

- --name=etcd0

- --data-dir=/data/etcd-data

- --advertise-client-urls=http://etcd0:2379

- --listen-client-urls=http://0.0.0.0:2379

restart: always

volumes:

- etcd0_data:/etcd-data

networks:

- game

mongodb:

container_name: mongodb0

image: mongo:4.4.4

restart: always

volumes:

- /data/mongo_data:/data/db

- mongodb_logs:/data/logs

command: --auth

networks:

- game

depends_on:

- etcd

volumes:

mysqlconf:

mongodb_logs:

etcd0_data:

redisdata0:

redisdata1:

redisdata2:

networks:

game:

external:

true

我自己用的简化过的模版,只需要修改 API_HOST 为自己 NAS 的 IP 就行了

services:

web:

container_name: web0

image: openinggame/web:v1

ports:

- "8080:80"

environment:

- API_HOST=192.168.31.90

depends_on:

- server

server:

container_name: server0

image: openinggame/server:v1

ports:

- "81:81"

depends_on:

- etcd

- kafka

- redis1

- mysql

- mongodb

mysql:

image: mysql:8.0.23

container_name: mysql0

command:

--default-authentication-plugin=mysql_native_password

--character-set-server=utf8mb4

--collation-server=utf8mb4_general_ci

restart: unless-stopped

environment:

MYSQL_ROOT_PASSWORD: root

volumes:

- ./mysql:/var/lib/mysql

- ./mysqlconf:/etc/mysql/conf.d

redis0:

container_name: redis0

image: redis:latest

volumes:

- ./redisdata0:/data

command: redis-server --requirepass 123456

depends_on:

- etcd

redis1:

container_name: redis1

image: redis:latest

volumes:

- ./redisdata1:/data

command: redis-server --requirepass 123456

depends_on:

- etcd

redis2:

container_name: redis2

image: redis:latest

volumes:

- ./redisdata2:/data

command: redis-server --requirepass 123456

depends_on:

- mysql

- etcd

- redis1

zookeeper:

container_name: zookeeper

image: wurstmeister/zookeeper

restart: always

kafka:

container_name: kafka0

image: wurstmeister/kafka:2.12-2.3.0

environment:

- KAFKA_BROKER_ID=0

- KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181

- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka0:9092

- KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092

volumes:

- /var/run/docker.sock:/var/run/docker.sock

restart: always

depends_on:

- zookeeper

etcd:

image: quay.io/coreos/etcd:v3.2.32

container_name: etcd0

environment:

ETCDCTL_API: 3

command:

- etcd

- --name=etcd0

- --data-dir=/data/etcd-data

- --advertise-client-urls=http://etcd0:2379

- --listen-client-urls=http://0.0.0.0:2379

restart: always

volumes:

- ./etcd0_data:/etcd-data

mongodb:

container_name: mongodb0

image: mongo:4.4.4

restart: always

volumes:

- ./mongo_data:/data/db

- ./mongodb_logs:/data/logs

command: --auth

depends_on:

- etcd

正常来说,全部容器都应该正常启动

使用

浏览器中输入 http://NAS的IP:8080 就能看到界面

刚启动有可能会显示不可用,等一下就行了(或者可以重启一下整个项目)

正常加载后,点击游客登录

跳转页面会有一个弹窗广告,不要关闭,点击下面注册按钮

随便输入 11 位的手机号码就行(注意开头好像要是 1 数字),填写信息进行绑定

登录以后就可以开始游戏了,游戏种类还挺多的

试试斗地主,可以根据底分选择分区

玩起来和平时的都一样,能和 AI 打,有出牌提示,聊天对话这些

接管的 AI 智商水平也不低(好像没有后台管理,积分不够只能重新创建账号了)

如果是朋友一起玩的话,可以单独**

游戏和前面也都是一样操作

手机打开网页也能进入游戏

资源占用还行,需要内存可能会多一些

总结

这款 H5 棋牌游戏虽然已经很久没有更新,但使用下来整体来说,和朋友组队娱乐体验不错,网页即点即玩很方便,只是缺少后台管理功能,积分不足需重新注册账号。

综合推荐:⭐⭐⭐(和朋友一起玩玩还不错)

使用体验:⭐⭐⭐(打开网页就行,很方便)

部署难易:⭐⭐⭐(一般,就是镜像比较多)︎

相关推荐