
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
[![Docker 拉取量] ] [![Docker 星级] ] [![Docker 镜像大小(标签)] ] [![GitHub 许可证] ]
[![GitHub 仓库] ]
Enshrouded游戏的Docker镜像,基于[steamcmd] 镜像构建,使用supervisor管理启动、自动更新和清理流程。
| 变量 | 是否必填 | 默认值 | 约束条件 | 描述 | 开发中 |
|---|---|---|---|---|---|
SERVER_NAME | 否 | Enshrouded Server | 字符串 | 服务器名称 | |
SERVER_SLOT_COUNT | 否 | 16 | 整数(1-16) | 最大允许同时在线玩家数 | |
SERVER_QUERYPORT | 否 | 15637 | 整数 | Steam查询端口 | |
SERVER_IP | 否 | 0.0.0.0 | 字符串(IPv4格式) | 用于内网配置的服务器IP | |
SERVER_SAVE_DIR | 否 | ./savegame | 字符串 | 存档文件夹(支持相对路径和绝对路径) | |
SERVER_LOG_DIR | 否 | ./logs | 字符串 | 日志文件夹(支持相对路径和绝对路径) | |
SERVER_VOICE_CHAT_MODE | 否 | Proximity | Proximity | Global | 语音聊天模式: proximity( proximity语音)或Global(全服语音) | |
SERVER_ENABLE_VOICE_CHAT | 否 | false | 布尔值(true/false) | 启用或禁用语音聊天 | |
SERVER_ENABLE_TEXT_CHAT | 否 | false | 布尔值(true/false) | 启用或禁用文字聊天 | |
PUID | 否 | 4711 | 整数 | 运行服务器的用户UID(文件权限用) | |
PGID | 否 | 4711 | 整数 | 运行服务器的用户组GID(文件权限用) | |
UPDATE_CRON | 否 | 字符串(Cron格式) | 服务器自动更新计划(例:*/30 * * * * 每30分钟检查更新) | ||
UPDATE_CHECK_PLAYERS | 否 | false | 布尔值(true/false) | 更新前是否检查是否有玩家在线 | |
BACKUP_CRON | 否 | 字符串(Cron格式) | 存档自动备份计划(例:*/15 * * * * 每15分钟备份,建议不低于10分钟) | ||
BACKUP_DIR | 否 | ./backup | 字符串 | 备份文件夹(支持相对路径和绝对路径) | |
BACKUP_MAX_COUNT | 否 | 0 | 整数 | 保留备份文件数量(0为无限制) | |
RESTART_CRON | 否 | 字符串(Cron格式) | 服务器自动重启计划(例:0 3 * * * 每天3点重启) | ⚠️ | |
RESTART_CHECK_PLAYERS | 否 | false | 布尔值(true/false) | 重启前是否检查是否有玩家在线 | ⚠️ |
GAME_BRANCH | 否 | public | 字符串 | Steam分支(如testing测试版) | |
STEAMCMD_ARGS | 否 | validate | 字符串 | SteamCMD额外参数(用于更新) | |
SERVER_PASSWORD ⚠️已弃用 | 否 | 字符串 | ⚠️ 已弃用:服务器密码(Enshrouded已忽略此值,请使用服务器角色功能) | ||
| **[服务器角色] ** | 否 | 详见链接说明 | |||
| **[服务器难度] ** | 否 | 详见链接说明 | ⚠️ |
所有以SERVER_为前缀的环境变量,对应enshrouded_server.json配置文件中的选项(参考[Enshrouded官方文档] )。
⚠️:表示功能开发中
game/server目录下的enshrouded_server.json文件直接修改,或使用SERVER_ROLE_<index>_XYZ格式的环境变量。更多信息见[官方文档] 。| 变量 | 描述 | 开发中 |
|---|---|---|
BOOTSTRAP_HOOK | 基础环境初始化后执行的命令 | |
UPDATE_PRE_HOOK | 更新前执行的命令 | |
UPDATE_POST_HOOK | 更新后执行的命令 | |
BACKUP_PRE_HOOK | 备份及清理前执行的命令 | |
BACKUP_POST_HOOK | 备份及清理后执行的命令 | |
RESTART_PRE_HOOK | 服务器重启前执行的命令 | |
RESTART_POST_HOOK | 服务器重启后执行的命令 |
脚本会等待钩子命令执行完成后再继续。
| 标签 | 虚拟化方式 | 描述 |
|---|---|---|
latest | Proton | 基于Proton的最新镜像 |
<version> | Proton | 基于Proton的固定版本镜像(≥1.x.x) |
stable-proton | Proton | 同latest标签 |
<version>-proton | Proton | 基于Proton的固定版本镜像 |
stable-wine | Wine | 基于Wine的最新稳定版镜像 |
<version>-wine | Wine | 基于Wine的固定版本镜像 |
dev-proton | Proton | 基于Proton的开发版镜像 |
dev-wine | Wine | 基于Wine的开发版镜像 |
dev-wine-staging | Wine | 基于Wine(staging分支)的开发版镜像 |
| 端口 | 描述 |
|---|---|
| ***/udp | Steam查询端口 |
| 卷路径 | 描述 |
|---|---|
| /opt/enshrouded | 游戏文件(Steam下载路径) |
注意:默认情况下,卷的文件所有者为UID和GID 4711(该用户通常不存在)。如需修改,可通过PUID和PGID环境变量指定。
**[官方配置说明] **
bashdocker run -d --name enshrouded \ --hostname enshrouded \ --restart=unless-stopped \ -p 15637:15637/udp \ -v ./game:/opt/enshrouded \ -e SERVER_NAME="Enshrouded服务器" \ -e SERVER_PASSWORD="secret" \ -e UPDATE_CRON="*/30 * * * *" \ -e PUID=4711 \ -e PGID=4711 \ docker.xuanyuan.run/mornedhels/enshrouded-server:latest
yamlservices: enshrouded: image: docker.xuanyuan.run/mornedhels/enshrouded-server:latest container_name: enshrouded hostname: enshrouded restart: unless-stopped stop_grace_period: 90s # 停止前等待90秒(确保存档完成) ports: - "15637:15637/udp" volumes: - ./game:/opt/enshrouded # 卷映射到当前目录下的game文件夹 environment: - SERVER_NAME=Enshrouded服务器 - SERVER_PASSWORD=secret # 已弃用,仅作示例 - UPDATE_CRON=*/30 * * * * # 每30分钟检查更新 - PUID=4711 - PGID=4711
说明:上述配置中,卷会创建在docker-compose.yml文件所在目录。如需使用Docker默认卷路径(如/var/lib/docker),可改用以下配置:
yamlservices: enshrouded: image: docker.xuanyuan.run/mornedhels/enshrouded-server:latest container_name: enshrouded hostname: enshrouded restart: unless-stopped stop_grace_period: 90s ports: - "15637:15637/udp" volumes: - game:/opt/enshrouded # 使用Docker命名卷 environment: - SERVER_NAME=Enshrouded服务器 - SERVER_PASSWORD=secret - UPDATE_CRON=*/30 * * * * - PUID=4711 - PGID=4711 volumes: game: # 定义命名卷
镜像内置备份脚本,可将最新存档压缩为ZIP文件。启用备份需设置BACKUP_CRON环境变量(如每15分钟备份),限制备份数量可设置BACKUP_MAX_COUNT。
SERVER_SAVE_DIR指定路径);[!WARNING]
恢复后需验证文件权限:解压的文件所有者需与环境变量PUID和PGID匹配。若容器以特权模式运行,文件会自动调整为指定的UID和GID。
强制更新:
bashdocker compose exec enshrouded supervisorctl start enshrouded-force-update
重置服务器角色:(会重启整个容器)⚠️
bashdocker compose exec enshrouded supervisorctl start enshrouded-reset-roles
重启服务器:(可用于定期维护)
bashdocker compose exec enshrouded supervisorctl restart enshrouded-server
服务器启动失败(未输出'HostOnline' (up)!日志)或更新失败,提示:
Error! App '2278520' state is 0x202 after update job.
原因:可能是文件权限错误或磁盘空间不足。
解决:检查PUID和PGID是否正确,确保文件所有者匹配,且磁盘空间充足。
自动更新失败,提示:
Error! App '2278520' state is 0x6 after update job.
官方解释:更新器无法连接到内容服务器。
可能原因:Steam应用清单损坏(参考[#119] )。
解决:执行强制更新命令。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务