专为游戏迷打造!使用绿联私有云UGOS Pro部署自托管复古游戏库管理器『RomM』

哈喽小伙伴儿们好,我是Stark-C~

缘起

🔺关注我的小伙伴应该还记得,我在前不久到手了绿联家首款全闪四盘位私有云 DXP480T Plus ,它采用了四盘位设计,拥有极速的读写性能,最大支持到16TB;搭载了10核12线程的英特尔酷睿 i5-1235U 处理器,单核睿频4.4GHz,核显规模80EU,属于一颗低功耗商用级处理器,性能强大;标配8GB DDR5-4800MHz 内存,最高可扩展至64GB;I/O接口上给到了一个万兆LAN口,还有双雷电4、USB 3.2 Gen 2和 HDMI接口,并且还内置了WiFi 6无线网卡,使其成为当前市面少有的支持无线的私有云NAS。

🔺刚到手的那些天系统多多少少还有些小问题的,比如SSH端口重启之后会恢复默认22端口,日常使用CPU占用会异常过高;不过就在昨天时候(7.16),绿联来了一次固件升级,修复了很多问题,其中就包括SSH端口与CPU占用问题,目前在环境温度接近30℃的情况下,后台运行的还有虚拟机与Docker容器,目前处理器温度也才50℃出头,整体体验比之前好了很多~

而且绿联私有云自从升级到UGOS Pro系统之后,也带来了权限全开的SSH连接方式,之前很多不能玩的Docker容器,现在可以说是几乎无所不能,只要咱们能够在全网找到的教程,基本都可以直接拿来抄作业,可玩性那是直接起飞~

所以我在想,绿联私有云 DXP480T Plus 这么强悍的性能,系统目前也在逐步完善,不折腾实在有点浪费。不过常规的媒体库我也玩腻了,所以今天就用它来玩个游戏库吧!

关于RomM

不知道有没有怀旧的小伙伴收集了很多之前GBA、GBC的游戏,然后没事的时候用模拟器拿出来玩上两把,回味下自己一去不复返的青春岁月的 。

而今天为大家分享的这个项目就是专为这些小伙伴准备,专门整理你收藏的游戏,并且也能为你收藏的游戏刮削除漂亮的海报墙。它就是一个免费开源的复古游戏库管理器项目『RomM』

🔺简单来说,RomM就是一个很方便的游戏管理工具,可以帮你整理和查看游戏收藏。它的界面简洁易用,支持多种平台和自定义标签,对于喜欢用模拟器玩游戏的人来说,简直就是必备神器!

🔺根据官方自己的描述,RomM的亮点如下:

  • 可以帮你扫描现有的游戏库,并通过IGDB和MobyGames(其实就是游戏刮削源)的元数据来整理这些游戏;

  • 支持非常多的平台游戏,比如说我们常见的3ds、gba、gbc等模拟游戏,PSPSP游戏,甚至还有switch、wll游戏等;

  • 可以以MAME、Nintendo Switch 和 Sony Playstation 的命名整理游戏,支持在浏览器上查看、上传、更新和删除游戏;

  • 自带基于Web的EmulatorJS模拟器,可以直接通过浏览器直接运行我们收藏在RomM上面的游戏;

  • 支持检测和分组同系列游戏,并且还能根据游戏标签进行解析和搜索。

PS:因为RomM的元数据(刮削源)都是来自于IGDB和MobyGames两大网站,不过这两网站在国内很多地方正常网络都打不开(是不是有种似曾相识的感觉~),所以为了后续正常使用,网络这一块需要你自己想办法搞定,这并不属于本文教程内容。

RomM部署

部署前的准备:

和我们之前部署nastools需要获取刮削源(TMDB)的API码(秘钥)一样,RomM也需要用到刮削源(IGDB和MobyGames)的API码。

🔺先来搞定IGDB这边的,需要先打开网站【https://dev.twitch.tv/login】注册一个账号。

🔺完成后进入后台页面,我们先要开启账号的双重验证,要不然获取不到我们需要的API码。点击右上角的图像,选择“账户设置”。

🔺进来后点击“安全与隐私--设置双重验证”。

🔺双重验证需要先绑定手机号码并收取一个验证码,按提示输入即可。

🔺这里你可以选择手机下载验证器应用,也可以直接选择“跳过并使用短信”来获取验证码。

🔺看到上图界面,说明双重验证已开启。

🔺然后回到后台,选择“注册您的应用程序”。

🔺这个页面随意填,我们其实只是纯粹注册一个信息,实际上后期也用不上。

🔺完成后点击该注册信息后面的“管理”。

🔺该页面下的“客户端ID”以及“客户端秘钥”就是我们需要的,可以选复制粘贴到电脑的文本文档上。

🔺同样我们也注册一个MobyGames官网账号【Video Game Database - MobyGames】,然后在个人主页页面的账户旁边,有一个“API”标识,我们点开它。

🔺直接就能获取到我们需要的API秘钥了,同样的可以将它复制粘贴到电脑的文本文档上。

开始部署:

因为这个容器的运行需要依赖数据库才可以,所以这里建议大家直接使用作者给出的docker-compose.yml文件一键部署。

个人建议先在咱们的绿联私有云UGOS Pro系统上部署Portaine,然后使用Portaine管理和创建Docker容器。

关于Portaine在UGOS Pro系统上部署我之前也写过相关教程:快速上手绿联私有云UGOS Pro系统Docker | 安装/部署/管理/docker-compose一网打尽_NAS存储_什么值得买

🔺这里假设咱们已经部署好Portaine,然后直接打开“堆栈”,将以下代码修改成自己的即可(基本上后面有注释的命令行都需要修改):

version: "3"
​
volumes:
  mysql_data:
  romm_resources:
  romm_redis_data:
​
services:
  romm:
    image: rommapp/romm:latest
    container_name: romm
    restart: unless-stopped
    environment:
      - DB_HOST=romm-db
      - DB_NAME=romm
      - DB_USER=romm-user
      - DB_PASSWD= #数据库密码
      - IGDB_CLIENT_ID= #IGDB端的客户端ID
      - IGDB_CLIENT_SECRET= #IGDB端的客户端秘钥
      - MOBYGAMES_API_KEY= #MobyGames官网得到的API秘钥
      - ROMM_AUTH_SECRET_KEY= #一个32位的16进制随机密码,自己随意设置
      - ROMM_AUTH_USERNAME=admin
      - ROMM_AUTH_PASSWORD= #管理员密码,自己随意设置
    volumes:
      - romm_resources:/romm/resources
      - romm_redis_data:/redis-data
      - /path/to/library:/romm/library
      - /path/to/assets:/romm/assets
      - /path/to/config:/romm/config
    ports:
      - 80:8080 #端口映射别和本地冲突
    depends_on:
      - romm-db
​
  romm-db:
    image: mariadb:latest
    container_name: romm-db
    restart: unless-stopped
    environment:
      - MYSQL_ROOT_PASSWORD= #数据库管理员密码,随意设置
      - MYSQL_DATABASE=romm
      - MYSQL_USER=romm-user
      - MYSQL_PASSWORD= #数据库密码,和上面的DB_PASSWD必须一样
    volumes:
      - mysql_data:/var/lib/mysql #映射mysql文件夹本地路径
​

如果你习惯SSH部署,可以将修改好的docker-compose.yml文件放到绿联NAS任意文件夹内,然后运行以下命令:

#进入文件夹
cd 文件夹实际路径
#启动容器
docker-compose up -d

🔺如果不出问题,我们可以在Portaine中看到我们部署的RomM程序会有两个容器正在运行。

RomM体验

🔺既然是游戏管理,咱们得先找到游戏吧~,这里分享一个非常不错的复古游戏分享站点【掌机迷_中古掌机游戏网站_GBA游戏_PSP游戏_NDS游戏_SFC游戏_FC游戏】,然后随便在上面下载了几个GBC游戏。

🔺需要说明的是,RomM对于游戏库的文件夹结构是有要求的,作者推荐的是文件夹结构A。

🔺然后咱们先回到绿联私有云的文件管理器,可以看到在它的docker目录下已经按照命令为我们创建了romm文件夹,同时,romm文件夹下面还有resources、redis、library、assets、config总共5个子文件夹:

  • resources:用于存储从IGDB获取的资源,如封面、截图等。

  • redis:用于后台任务的缓存数据

  • library:游戏库目录,我们收藏的游戏都存于这个目录中

  • assets:用于上传和保存游戏的存档、状态等数据。

  • config:配置文件(config.yml)目录

🔺我这里就根据作者的推荐选择文件夹结构A,手动在library文件夹内再分别创建子文件夹"roms--gbc",然后将下载下来的GBC游戏上传进来。

需要强调的是:和Jellyfin等影音管理软件一样,RomM也是根据游戏的名称进行刮削识别的,基本上是无法识别中文,所以建议大家讲下载的游戏重命名为对应的英文名字。

🔺这个时候就可以打开RomM后台了。浏览器输入【NAS本地IP:端口号/login】进入登录页面,输入部署时候创建的用户名和密码就能打开后台。

🔺进来之后可以看到它是英文界面,虽说目前没有原生中文界面,但是浏览器翻译之后也不影响我们正常使用。先直接扫描游戏。

🔺因为网络加上游戏名称都没问题,我这边刮削起来还是挺快的,不过看结果仍然有一个没有识别。

🔺然后我们在没识别的这个游戏点击“搜索IGDB”。

🔺我们可以进IGDB游戏官网之后,找到该游戏对应的ID编号,直接通过ID编号,很容器就搜索到该游戏的信息。

🔺全部刮削成功!

🔺和Jellyfin一样,点进去之后还能看到该游戏的详细信息,并且点击播放标识还能直接在线玩起来。

🔺虽说画面在现在看起来有点辣眼睛,但是谁又能懂我们小时候的乐趣呢~

总结

今天分享的这个RomM项目还是不错的,对于喜欢收集游戏的小伙伴儿来说,它做到了整理、刮削,并且还能做到打开即玩,绝对值得你用来整理自己的游戏库的。

绿联私有云自从升级到UGOS Pro系统之后,也带来了权限全开的SSH连接方式,之前很多不能玩的Docker容器,现在可以说是几乎无所不能,只要咱们能够在全网找到的教程,基本都可以直接拿来抄作业,可玩性那是直接起飞~

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐