藏宝湾网游单机站

 找回密码
 注册

QQ登录

只需一步,快速开始

★【黑暗之光SF★我是大主宰SF】【神将三国SF】★

★【0.1折】★【变态网页游戏私服】★

★神将三国网页版上线送V5 5w元宝 5000w铜币 我是大主宰上线满v,80万元宝,小怪都爆元宝,耐玩长久稳定★

【原始传奇SF/维京传奇SF★0.1折手游】

★【原始传奇SF/维京传奇SF★0.1折手游】★

★『0.01折+G.M游戏+千军纵横+开天西游+维京传奇+异兽洪荒+原始传奇』送99999充值★

首创可以单机 可以互动 可以赚烟钱的传奇

★全网独家 可以单机 可以互动的传奇!★

★全网唯一持续更新的可单机游戏!每15-25天更新一次内容,保持游戏新鲜度!! 众多独家的功能特色,众多你没见过的全新玩法,有能力的赚点烟钱,还能偶尔沙城战斗!★

【独家RPG文字梦幻】【摸鱼搬砖不氪不肝】
★【独家RPG文字梦幻】【摸鱼搬砖不氪不肝】★

★新区开放,三端互通,适合上班挂机、摸鱼。 休闲放置,不占时间,玩熟了一天只需十几分钟就能轻松搞定。★

☆六一新区开放-放置传奇☆

★六一新区开放-放置传奇★

★可白嫖 上班摸鱼类 放置文字传奇游戏(放置休闲)qq群756025698★

★三职业复古★开局送神装★爆率100%★散人逆袭★

★三职业复古★开局送神装★爆率100%★散人逆袭★

★〖双线〗〖无忧传奇〗〖每日新区〗〖开局送神装 100%高爆率 装备元宝打怪爆〗★

【DE】三国(SGL)玩就送100000现金(纯免费)

★【DE】三国(SGL)玩就送100000现金(纯免费)★

★全新建立的账号开局赠送10W代金券。 老账号不发哈!代金券账号内通用!!★

★承接推广★

★承接推广★

★承接推广★

★DNF★全职业平衡★公益服★
★DNF★全职业平衡★公益服★

【dnf86版本】【怀旧服】【全职业平衡】【非变态服】【非商业服】【774031300】

★梦幻16门派全新大唐九黎★

★梦幻16门派全新大唐九黎★

★独家PK系统,享受极致免费PK ★打造系统,装备可打造出无级别,宝珠点化无级别 ★炼妖系统,力劈善恶台子观照,炼妖炼到手软 ★不做垃圾,力争什么都做到最好 ★持续更新,长久稳定★

★◆新开魔力宝贝◆三端互通◆复古怀旧◆★

★◆新开魔力宝贝◆三端互通◆复古怀旧◆★

★全新魔力手游,安卓 ios PC三端互通 随时随地,随时魔力 复古怀旧版本,满满的青春回忆 还是曾经的法兰城,你在哪里?★

★承接推广★

★承接推广★

★承接推广★

查看: 1235|回复: 23

[原创] 星际战甲丨docker部署服务端

[复制链接]
 楼主| 发表于 2025-6-12 14:56:53 | 显示全部楼层 |阅读模式
本帖最后由 楓落 于 2025-6-12 22:39 编辑

这里只分享在docker中部署服务端,作者的https://openwf.io/SpaceNinjaServer.git中其实已经有docker部署的文件了,但在正常部署的时候会报错node版本过低,所以我们要修改一下其中的【Dockerfile】文件内容,这里我是利用deepseek修改。
我这边使用1panel面板,centos7系统。
1、克隆仓库
---
# 克隆仓库到服务器

git clone https://openwf.io/SpaceNinjaServer.git
# 进入SpaceNinjaServer文件夹
cd SpaceNinjaServer
---
如果未安装git,建议百度搜索git安装方法。
PS:我们要下载https://openwf.io/SpaceNinjaServer.git下的所有文件,如服务器没有vpn,则可以其他设备使用vpn下载文件,然后上传到服务器目录解压->【spaceninjaserver】文件夹。

2、创建配置文件
---
cp config.json.example config.json
---

PS:复制【config.json.example】并改名为【config.json】

3. 创建数据目录
---
mkdir -p docker-data/{static,database,logs}

---
PS:或者使用1panel->文件目录->创建【docker-data】文件夹,进入【docker-data】->创建【static】、【database】、【logs】三个目录。

4. (可选) 下载静态资源
---
cd docker-data/static
git clone https://openwf.io/0.git
cd ../..
---
PS:如果服务器下载不了,跟第一步一样,先下载到本地然后上传服务器解压,目录路径为【spaceninjaserver/docker-data/static/0/Lotus】。

5. 修改 docker-compose.yml 文件
---
services:
    spaceninjaserver:
        build: .
        image:  spaceninjaserver:latest  # openwf/spaceninjaserver:latest
        environment:
            APP_MONGODB_URL: mongodb://openwfagent:spaceninjaserver@mongodb:27017/

            其余省略(中间的环境参数可以用AI解释,或者后面在UI界面按需设置)
            .
            ..
            ...

        volumes:
            - ./docker-data/static:/app/static/data
            - ./docker-data/logs:/app/logs
        ports:
            - 22180:80
            - 36443:443
            - 6155:6155
        depends_on:
            - mongodb
    mongodb:
        image: docker.io/library/mongo:8.0.0-noble
        command: mongod --bind_ip_all --auth  # 允许外部连接并启用认证
        environment:
            MONGO_INITDB_ROOT_USERNAME: openwfagent
            MONGO_INITDB_ROOT_PASSWORD: spaceninjaserver
        volumes:
            - ./docker-data/database:/data/db

---
6、修改 config.json 文件(这里只写出需要修改的项)

【"mongodbUrl": "mongodb://127.0.0.1:27017/openWF"】修改为【"mongodbUrl": "mongodb://openwfagent:spaceninjaserver@mongodb:27017/openWF"】;
【"myAddress": "localhost"】修改为【"myAddress": "0.0.0.0", // 监听所有接口】;
【"httpPort": 80,"httpsPort": 443】这两项修改为上面 docker-compose.yml 文件映射的端口【"httpPort": 22180,"httpsPort": 36443,】;
可选-【"NRS": ["localhost"]】修改为【"NRS": ["192.168.6.108", "10.10.0.1"], // 允许访问服务的多域名/IP】
其余的项都不是必改的,想要修改请咨询deepseek。

7、修改 Dockerfile 文件 ,直接复制代码替换 原文件内容,这一步是构建镜像的关键 (我的系统是centos7,所以命令做了对应修改,如系统不一致,请复制文档所有内容询问deepseek修改)
---

# 使用官方 Node.js 20 镜像作为基础
FROM node:20


# 设置环境变量
ENV APP_MONGODB_URL=mongodb://openwfagent:spaceninjaserver@mongodb:27017/openWF \
    APP_MY_ADDRESS=192.168.6.108 \
    APP_HTTP_PORT=22180 \
    APP_HTTPS_PORT=36443 \
    APP_AUTO_CREATE_ACCOUNT=true \
    APP_SKIP_TUTORIAL=false \
    APP_SKIP_ALL_DIALOGUE=false \
    APP_UNLOCK_ALL_SCANS=false \
    APP_UNLOCK_ALL_MISSIONS=false \
    APP_INFINITE_CREDITS=false \
    APP_INFINITE_PLATINUM=false \
    APP_INFINITE_ENDO=false \
    APP_INFINITE_REGAL_AYA=false \
    APP_INFINITE_HELMINTH_MATERIALS=false \
    APP_CLAIMING_BLUEPRINT_REFUNDS_INGREDIENTS=false \
    APP_DONT_SUBTRACT_VOIDTRACES=false \
    APP_DONT_SUBTRACT_CONSUMABLES=false \
    APP_UNLOCK_ALL_SHIP_FEATURES=false \
    APP_UNLOCK_ALL_SHIP_DECORATIONS=false \
    APP_UNLOCK_ALL_FLAVOUR_ITEMS=false \
    APP_UNLOCK_ALL_SKINS=false \
    APP_UNLOCK_ALL_CAPTURA_SCENES=false \
    APP_UNIVERSAL_POLARITY_EVERYWHERE=false \
    APP_UNLOCK_DOUBLE_CAPACITY_POTATOES_EVERYWHERE=false \
    APP_UNLOCK_EXILUS_EVERYWHERE=false \
    APP_UNLOCK_ARCANES_EVERYWHERE=false \
    APP_NO_DAILY_FOCUS_LIMIT=false \
    APP_NO_ARGON_CRYSTAL_DECAY=false \
    APP_NO_MASTERY_RANK_UP_COOLDOWN=false \
    APP_NO_VENDOR_PURCHASE_LIMITS=true \
    APP_NO_DEATH_MARKS=false \
    APP_NO_KIM_COOLDOWNS=false \
    APP_SYNDICATE_MISSIONS_REPEATABLE=false \
    APP_INSTANT_FINISH_RIVEN_CHALLENGE=false \
    APP_INSTANT_RESOURCE_EXTRACTOR_DRONES=false \
    APP_NO_RESOURCE_EXTRACTOR_DRONES_DAMAGE=false \
    APP_SKIP_CLAN_KEY_CRAFTING=false \
    APP_NO_DOJO_ROOM_BUILD_STAGE=false \
    APP_NO_DECO_BUILD_STAGE=false \
    APP_FAST_DOJO_ROOM_DESTRUCTION=false \
    APP_NO_DOJO_RESEARCH_COSTS=false \
    APP_NO_DOJO_RESEARCH_TIME=false \
    APP_FAST_CLAN_ASCENSION=false \
    APP_SPOOF_MASTERY_RANK=-1


# 安装 CentOS 兼容工具(可选)
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        bash \
        sed \
        wget \
        jq && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*


# 如果你用的是 Alpine 镜像(比如 node:20-alpine),请使用以下命令:
# RUN apk add --no-cache bash sed wget jq


# 拷贝项目文件
COPY . /app
WORKDIR /app


# 安装依赖(如果有的话)
RUN npm install --production


# 设置入口点
ENTRYPOINT ["/app/docker-entrypoint.sh"]

---
8、根据Dockerfile构建镜像
如果跟我一样使用的是1panel面板就可以参照如下,如果是其他命令行,请询问AI(Dockerfile位于xx目录,如何根据Dockerfile构建镜像):
【容器】-【镜像】-【构建镜像】-

镜像名字:spaceninjaserver
路径选择:spaceninjaserver/Dockerfile  (根据你的Dockerfile存放位置来)
】-【确认】
然后等待镜像构建完成(等待时间受网络情况影响),然后就可以搭建容器了。

9、创建容器
---
首先返回docker-compose.yml所在目录,根据个人下载位置修改【cd 路径】
cd spaceninjaserver
创建容器
docker-compose up -d
---
PS:上面这步结束后,你就能在1panel面板的容器页面看到2个容器了:
spaceninjaserver-spaceninjaserver-1
spaceninjaserver-mongodb-1


到这一步不出意外的话,docker版的服务端就部署好了,你可以通过下面的地址进入到后台界面注册账号,控制其他参数:
http://服务器IP地址:22180/webui/inventory

10、客户端修改
下载完客户端补丁后,在【OpenWF】的【client_config.json】文件中修改下面参数,请根据你个人的IP和端口修改
该文档的设置手册地址:OpenWF 引导程序手册 --- OpenWF Bootstrapper Manual
  1.     "server_host": "你的服务器IP",
复制代码
然后保存文件,通过【Warframe.x64.exe】启动游戏,进行测试

服务端资源占用图片:

最后,因内容较多,若有错误欢迎指出,部署过程如有预期之外的错误,请先询问AI或者百度。



 楼主| 发表于 2025-6-12 15:01:04 | 显示全部楼层
我服了这个颜色代码了
[发帖际遇]: 楓落 乐于助人,奖励 3 枚 金币. 幸运榜 / 衰神榜
发表于 2025-6-12 15:42:06 | 显示全部楼层
谢谢分享
发表于 2025-6-12 18:01:09 | 显示全部楼层
谢谢大佬分享
[发帖际遇]: lilinrfrf 发帖时在路边捡到 5 枚 金币,偷偷放进了口袋. 幸运榜 / 衰神榜
发表于 2025-6-12 18:37:36 | 显示全部楼层

谢谢分享
发表于 2025-6-12 19:04:16 来自手机 | 显示全部楼层
就一个很简单的模拟器,越搞越复杂。。。
发表于 2025-6-12 19:05:02 来自手机 | 显示全部楼层
感谢分享
 楼主| 发表于 2025-6-12 19:23:53 | 显示全部楼层
rmtl233 发表于 2025-6-12 19:04
就一个很简单的模拟器,越搞越复杂。。。

你知道你想要什么吗?你知道别人想要什么吗?就到处指点
发表于 2025-6-12 19:34:26 来自手机 | 显示全部楼层
楓落 发表于 2025-6-12 19:23
你知道你想要什么吗?你知道别人想要什么吗?就到处指点

嗯,你说得对,是我狭隘了
发表于 2025-7-4 05:22:01 | 显示全部楼层
非常感谢实在是太有用了,已经成功运行,不过请问如何添加管理员
 楼主| 发表于 2025-7-4 10:24:06 | 显示全部楼层
HOMURA427 发表于 2025-7-4 05:22
非常感谢实在是太有用了,已经成功运行,不过请问如何添加管理员

config.json中的administratorNames项添加游戏内名字
 楼主| 发表于 2025-7-4 10:40:49 | 显示全部楼层
作者最新的docker镜像已经修复node等问题了,所以直接
1、克隆仓库
2、创建配置文件
3、创建数据目录
改为mkdir -p docker-data/{conf,static-data,database,logs}
需要把仓库中static文件夹中的内容手动复制到static-data中
4、同之前
5. 修改 docker-compose.yml 文件
只需要修改映射的端口号
6、现在会在创建容器后在docker-data/conf目录单独生成config.json文件,只需要修改ip地址、端口号和管理员,其余选项可在22180 (webui界面)修改
第7和8步删除
9、同之前
.
.
.
更新服务端的话,小白一点就重新走一遍流程
机灵一点就只替换作者每天更新的那几个文件夹和文件,单独挑出来修改替换
(仓库:https://onlyg.it/OpenWF/SpaceNinjaServer
发表于 2025-7-4 14:07:14 | 显示全部楼层
楓落 发表于 2025-7-4 10:24
config.json中的administratorNames项添加游戏内名字

请问以SpaceNinjaServer文件下的还是SpaceNinjaServer/docker-data/conf/里的
 楼主| 发表于 2025-7-7 11:36:28 | 显示全部楼层
HOMURA427 发表于 2025-7-4 14:07
请问以SpaceNinjaServer文件下的还是SpaceNinjaServer/docker-data/conf/里的

SpaceNinjaServer/docker-data/conf/里的,docker-data是容器的数据文件夹路径
 楼主| 发表于 2025-7-9 16:53:30 | 显示全部楼层
本帖最后由 楓落 于 2025-7-9 17:02 编辑
HOMURA427 发表于 2025-7-4 14:07
请问以SpaceNinjaServer文件下的还是SpaceNinjaServer/docker-data/conf/里的

要注意添加  双引号,太旧没更新服务端忘记了 搞得报错了好几次,"administratorNames": ["A","B"]
发表于 2025-7-9 23:07:18 | 显示全部楼层
楓落 发表于 2025-7-9 16:53
要注意添加  双引号,太旧没更新服务端忘记了 搞得报错了好几次,"administratorNames": ["A","B"]

感谢分享,我自己改了好多次都无效后发现用脚本直接导入就OK,应该就是格式的问题哈哈

"administratorNames": [
    "admin",
    "admin1",
    "admin2",
    "admin3",
    "admin4",
    "admin5"
  ],
发表于 2025-7-18 11:03:35 | 显示全部楼层
看帖子解决好多疑问
发表于 2025-7-23 12:16:11 | 显示全部楼层
楓落 发表于 2025-7-4 10:40
作者最新的docker镜像已经修复node等问题了,所以直接
1、克隆仓库
2、创建配置文件

大佬,就没能一键拉取更新的命令?比如说  git pull
这个命令用了是否更新了?
发表于 2025-7-23 17:26:09 | 显示全部楼层
hrmydfer 发表于 2025-7-23 12:16
大佬,就没能一键拉取更新的命令?比如说  git pull
这个命令用了是否更新了?

如果是用的官方的镜像,而不是自己构建的镜像,可以用下面的命令更新(在compose.yml文件所在目录依次执行):
docker compose pull  
docker compose down --remove-orphans
docker compose up -d
发表于 2025-7-23 20:30:30 | 显示全部楼层
Picasou 发表于 2025-7-23 17:26
如果是用的官方的镜像,而不是自己构建的镜像,可以用下面的命令更新(在compose.yml文件所在目录依次执行 ...

感谢,我等下试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

本站内容如若侵犯到您的权益,请来电来函告知,我们会尽快处理!
联系QQ:1953150286,2251387361,123784736,免责申明

排行榜|联系我们|小黑屋|手机版|Archiver|游戏藏宝湾 |

GMT+8, 2025-8-3 05:38 , Processed in 0.316451 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表