前言
五子棋作为经典的棋类游戏,简单却耐玩,尤其适合朋友之间轻松对战。
GitHub 上的开源项目gomoku_pvp_1_zh-cn
对原有五子棋对战系统进行了汉化和改进,玩家可以直接在网页端进入房间、进行对弈。
本文将演示如何在 QNAP 威联通 NAS 上,通过 Container Station 部署这个五子棋 PvP 游戏,使其成为家庭或小团队内部的休闲游戏平台。
项目介绍
gomoku_pvp_1_zh-cn
是一个基于 React + Node.js + Socket.io 架构开发的网页五子棋游戏。它来源于开源项目 Gomoku React
,在此基础上进行了 界面汉化 和部分优化,用户无需安装客户端,只要浏览器即可在线对弈。
项目主要特点包括:
即开即用:部署完成后,任何设备只要输入 NAS 地址和端口,即可进入游戏。
实时对战:采用 Socket.io 进行前后端通信,落子即时同步。
房间机制:玩家可以输入房间号,自由加入或创建对局,适合好友对战。
界面本地化:所有菜单、提示信息均已翻译为中文,用户体验更贴近国内习惯。
轻量化部署:无复杂数据库依赖,直接通过 Docker 容器运行即可。
这个项目的设计目标是:让五子棋爱好者能够通过简洁的网页界面快速开局,尤其适合在家庭 NAS 上运行,随时供朋友或家人娱乐。汉化作者有进一步拓展功能的想法(聊天、获胜突出提示等),大家有建议可以去项目提出。
项目地址:https://github.com/Firfr/gomoku_pvp_1_zh-cn
部署流程
部署代码如下:
#version: '3'
services:
gomoku_pvp:
container_name: gomoku_pvp
image: swr.cn-north-4.myhuaweicloud.com/firfe/gomoku_pvp_1_zh-cn:2025.06.28
# 使用的镜像地址,托管在华为云镜像仓库,这里指定了版本号 2025.06.28
# 镜像里已经包含了五子棋 PvP 游戏的运行环境和代码
network_mode: bridge # 默认,但作者写出来我也就不删了
restart: always
logging: # 这部分是日志配置
options:
max-size: 1m
max-file: '1'
ports:
- 5124:5124 # 冒号左侧端口可改
# 部署完成后可通过 http://NAS_IP:5124 访问游戏
去docker hub查了查并没有托管到那里,所以大家就用作者的好了,也可以自己再打包托管。
打开Container Station,创建新的应用程序。
当然也提供了docker cli
的部署方式:
docker run -d \
--name gomoku_pvp_1_zh-cn \
--network bridge \
--restart always \
--log-opt max-size=1m \
--log-opt max-file=1 \
-p 5124:5124 \
swr.cn-north-4.myhuaweicloud.com/firfe/gomoku_pvp_1_zh-cn:2025.06.28
游玩体验
若按照上文进行部署,浏览器输入 NAS_IP:5214 即可访问服务。因为这个服务并没有前端验证,大家如果外网游玩,可以用lucky添加,或是利用上一篇的中转验证保护。
https://blog.ydxian.xyz/archives/Tinyauth
先点击创建游戏,会获得一个房间号。
然后再回去,点击加入游戏,输入房间号并回车。
游戏结束,点击确定会回到主界面。
反代
主要是为了在外面玩玩~
Lucky的子配置如下。若要添加认证,请看红框标注部分。
测试过反代没问题~
最后
一个简洁的开源五子棋项目,就能在 NAS 上发挥出无限的趣味。
希当然功能还不够完善,反正是个十分轻量的项目,大家可以部署玩玩看。
感谢观看,本文完~
评论区