F
描述
由于 FiveM 最近的变更,为最新构建版本提供了一个新的 FiveM / RedM 服务端模板。
106 浏览
8 下载
2026-07-01
更新于 19 小时前
预设配置详情
FiveM
支持的架构
FiveM 仅支持 amd64。arm64 不支持(例如 Oracle 免费云)
关于 Pteroadactyl 对 FiveM 的支持说明
Pterodactyl 将不会为 FiveM 提供支持。你可以自由运行 FiveM 服务器,但 Pterodactyl Discord 中不会提供任何支持,详情请查看下面的 Discord 公告。
如果你计划运行 FiveM 服务器,值得一读
Pterodactyl Discord 公告
来自 FiveM 网站
FiveM 是《侠盗猎车手V》的一个模组,使您能够在自定义专用服务器上进行多人游戏。
注意
目前脚本可以从构建站点获取版本。
FIVEM_VERSION 变量。
- 默认值为
latest,即最新推荐版本 - 可以设置为特定版本,例如
2431-350dd7bd5c0176216c38625ad5b1108ead44674d。
DOWNLOAD_URL 仅在开启 DDoS 保护时才需要使用。该变量需要指向一个 fx.tar.xz 文件,因为我懒得更新整个脚本。
txAdmin
现在支持 txAdmin,默认情况下禁用。将 TXADMIN_ENABLED 设置为 1 以启用它。
最后一次对 egg 的更新将服务器改为使用 txadmin 运行。首次启动时,会打印一个密钥,用于登录 txadmin 面板。
[!WARNING]
你的服务器在通过 txadmin 启动之前不会上线
随着最新更新,请查看 txAdmin Github 了解一些变化。
目前添加了以下内容:
- TXHOST_TXA_PORT(管理员可更改值)
- TXHOST_GAME_NAME(管理员可更改值)
- TXHOST_DATA_PATH(硬编码为 /home/container/txData)
[!NOTE]
此 Egg 也可用于 REDM(相同框架/构件构建/TxAdmin)。将此 Egg 用于 REDM 时,将游戏名称的值改为:redm。
[!WARNING]
需要重新安装才能将正确的值写入文件以确保正常运行(如果你在首次安装后更改游戏名称,fivem <-> redm !)
服务器端口
以表格形式列出运行服务器所需的端口。
| 端口 | 默认值 |
|---|---|
| 游戏 | 30110 |
| 游戏+1 | 30120 |
| txAdmin | 40120 |
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian
$(pwd)/alpine/opt/cfx-server/ld-musl-x86_64.so.1 --library-path "$(pwd)/alpine/usr/lib/v8/:$(pwd)/alpine/lib/:$(pwd)/alpine/usr/lib/" -- $(pwd)/alpine/opt/cfx-server/FXServer +set citizen_dir $(pwd)/alpine/opt/cfx-server/citizen/ +set sv_licenseKey {{FIVEM_LICENSE}} +set steam_webApiKey {{STEAM_WEBAPIKEY}} +set sv_maxplayers {{MAX_PLAYERS}} $( [ "$TXADMIN_ENABLE" == "1" ] || printf %s '+exec server.cfg' )
| 变量名 | 变量 | 描述 | 默认值 | 规则 | 可查看 | 可编辑 |
|---|---|---|---|---|---|---|
| FiveM 许可证 | FIVEM_LICENSE |
启动服务所需。在 https://portal.cfx.re/ 获取您的密钥。 | |
required|string|max:33
必填 字符串 最大 33
|
||
| 最大玩家数 | MAX_PLAYERS |
设置 FiveM 最大玩家数量 | 48 |
required|integer|between:1,48
必填 整数 介于 1-48 之间
|
||
| 服务器主机名 | SERVER_HOSTNAME |
在服务器浏览器中显示的名称 | My new FXServer! |
required|string
必填 字符串
|
||
| fivem版本 | FIVEM_VERSION |
要安装的 fivem 版本。无效版本将默认使用推荐版本。 例如 `6013-d8ae399d15680da569022f57ab7f2474d307c821` 您可以从这里获取最新版本 - https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/ | recommended |
required|string|max:50
必填 字符串 最大 50
|
||
| 下载链接 | DOWNLOAD_URL |
这是下载 fivem 的链接。仅用于安装脚本。您链接到的文件需要是 fx.tar.zx 文件。 示例: https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/6013-d8ae399d15680da569022f57ab7f2474d307c821/fx.tar.xz | |
string|nullable
可选 字符串
|
||
| Steam Web API密钥 | STEAM_WEBAPIKEY |
使用你的 Steam WebApiKey 或设置为 'none'。在 https://steamcommunity.com/dev/apikey/ 获取你的密钥。 | none |
required|string
必填 字符串
|
||
| txAdmin 端口 | TXHOST_TXA_PORT |
txAdmin面板的端口 | 40120 |
required|string|max:20
必填 字符串 最大 20
|
||
| 启用 txadmin | TXADMIN_ENABLE |
启用txadmin。 设为1以启用。(默认为0表示禁用) | 0 |
required|boolean
必填 布尔
|
||
| 游戏名称 | TXHOST_GAME_NAME |
限制仅运行 FiveM 或 RedM 服务器。 设置页面将只显示下方指定游戏的相关配方! 选项为:fivem 或 redm | fivem |
required|in:fivem,redm
必填 选项: fivem,redm
|
||
| 游戏类型 | GAME_TYPE |
要使用的值:gta5(对应FiveM)和rdr3(对应RedM) ! 不要填写任何值,它会读取游戏名称变量并自动设置正确的值 ! | |
string|nullable
可选 字符串
|
||
| TXHOST 数据路径 | TXHOST_DATA_PATH |
TX Admin 的位置 | /home/container/txData |
required|string
必填 字符串
|
镜像
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian
入口
bash
#!/bin/bash
# FiveM Installation Script
#
# Server Files: /mnt/server
apt update -y
apt install -y tar xz-utils file jq
mkdir -p /mnt/server/resources
cd /mnt/server
echo "updating citizenfx resource files"
git clone https://github.com/citizenfx/cfx-server-data.git /tmp
cp -Rf /tmp/resources/* resources/
RELEASE_PAGE=$(curl -sSL https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/)
CHANGELOGS_PAGE=$(curl -sSL https://changelogs-live.fivem.net/api/changelog/versions/linux/server)
if [[ "${FIVEM_VERSION}" == "recommended" ]] || [[ -z ${FIVEM_VERSION} ]]; then
DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')
elif [[ "${FIVEM_VERSION}" == "latest" ]]; then
DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.latest_download')
else
VERSION_LINK=$(echo -e "${RELEASE_PAGE}" | grep -Eo '".*/*.tar.xz"' | grep -Eo '".*/*.tar.xz"' | sed 's/\"//g' | sed 's/\.\///1' | grep -i "${FIVEM_VERSION}" | grep -o =.* | tr -d '=')
if [[ "${VERSION_LINK}" == "" ]]; then
echo -e "defaulting to recommedned as the version requested was invalid."
DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')
else
DOWNLOAD_LINK=$(echo https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/${VERSION_LINK})
fi
fi
if [ ! -z "${DOWNLOAD_URL}" ]; then
if curl --output /dev/null --silent --head --fail ${DOWNLOAD_URL}; then
echo -e "link is valid. setting download link to ${DOWNLOAD_URL}"
DOWNLOAD_LINK=${DOWNLOAD_URL}
else
echo -e "link is invalid closing out"
exit 2
fi
fi
echo -e "Running curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*/}"
curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*/}
echo "Extracting fivem files"
FILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*/} | cut -d',' -f2 | cut -d' ' -f2)
if [ "$FILETYPE" == "gzip" ]; then
tar xzvf ${DOWNLOAD_LINK##*/}
elif [ "$FILETYPE" == "Zip" ]; then
unzip ${DOWNLOAD_LINK##*/}
elif [ "$FILETYPE" == "XZ" ]; then
tar xvf ${DOWNLOAD_LINK##*/}
else
echo -e "unknown filetype. Exiting"
exit 2
fi
rm -rf ${DOWNLOAD_LINK##*/} run.sh
if [ -e server.cfg ]; then
echo "Skipping downloading default server config file as one already exists"
else
echo "Downloading default fivem config"
curl https://raw.githubusercontent.com/parkervcp/eggs/master/game_eggs/gta/fivem/server.cfg >>server.cfg
fi
# Map GAME_NAME to GAME_TYPE before writing to server.cfg
if [ "${TXHOST_GAME_NAME}" == "fivem" ]; then
GAME_TYPE="gta5"
elif [ "${TXHOST_GAME_NAME}" == "redm" ]; then
GAME_TYPE="rdr3"
else
echo "Invalid GAME_NAME specified: ${TXHOST_GAME_NAME}"
exit 1
fi
CFG_FILE="server.cfg"
# Only proceed if server.cfg exists
if [ -f "$CFG_FILE" ]; then
# Remove old gamename block: comment and actual line
sed -i '/^# set gamename/,+1d' "$CFG_FILE"
# Append clean new block
{
echo "# set gamename"
echo "set gamename \"${GAME_TYPE}\""
} >> "$CFG_FILE"
else
echo "Warning: $CFG_FILE not found. Skipping gamename insertion."
fi
mkdir -p logs/
echo "install complete"
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": "https://eggs.pterodactyl.top/eggs/219/download/egg-fivem.json"
},
"exported_at": "2025-10-20T19:43:26+02:00",
"name": "FiveM",
"author": "parker@parkervcp.com",
"description": "由于 FiveM 最近的变更,为最新构建版本提供了一个新的 FiveM / RedM 服务端模板。",
"features": null,
"docker_images": {
"registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian"
},
"file_denylist": [],
"startup": "$(pwd)/alpine/opt/cfx-server/ld-musl-x86_64.so.1 --library-path \"$(pwd)/alpine/usr/lib/v8/:$(pwd)/alpine/lib/:$(pwd)/alpine/usr/lib/\" -- $(pwd)/alpine/opt/cfx-server/FXServer +set citizen_dir $(pwd)/alpine/opt/cfx-server/citizen/ +set sv_licenseKey {{FIVEM_LICENSE}} +set steam_webApiKey {{STEAM_WEBAPIKEY}} +set sv_maxplayers {{MAX_PLAYERS}} $( [ \"$TXADMIN_ENABLE\" == \"1\" ] || printf %s '+exec server.cfg' )",
"config": {
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"endpoint_add_tcp\": \"endpoint_add_tcp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"endpoint_add_udp\": \"endpoint_add_udp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"sv_hostname\": \"sv_hostname \\\"{{server.build.env.SERVER_HOSTNAME}}\\\"\",\r\n \"set sv_licenseKey\": \"set sv_licenseKey {{server.build.env.FIVEM_LICENSE}}\",\r\n \"set steam_webApiKey\": \"set steam_webApiKey {{server.build.env.STEAM_WEBAPIKEY}}\",\r\n \"sv_maxclients\": \"sv_maxclients {{server.build.env.MAX_PLAYERS}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"succeeded. Welcome!\"\r\n}",
"logs": "{}",
"stop": "quit"
},
"scripts": {
"installation": {
"script": "#!/bin/bash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: /mnt/server\r\napt update -y\r\napt install -y tar xz-utils file jq\r\n\r\nmkdir -p /mnt/server/resources\r\n\r\ncd /mnt/server\r\n\r\necho \"updating citizenfx resource files\"\r\ngit clone https://github.com/citizenfx/cfx-server-data.git /tmp\r\ncp -Rf /tmp/resources/* resources/\r\n\r\nRELEASE_PAGE=$(curl -sSL https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/)\r\nCHANGELOGS_PAGE=$(curl -sSL https://changelogs-live.fivem.net/api/changelog/versions/linux/server)\r\n\r\nif [[ \"${FIVEM_VERSION}\" == \"recommended\" ]] || [[ -z ${FIVEM_VERSION} ]]; then\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')\r\nelif [[ \"${FIVEM_VERSION}\" == \"latest\" ]]; then\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.latest_download')\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo '\".*/*.tar.xz\"' | grep -Eo '\".*/*.tar.xz\"' | sed 's/\\\"//g' | sed 's/\\.\\///1' | grep -i \"${FIVEM_VERSION}\" | grep -o =.* | tr -d '=')\r\n if [[ \"${VERSION_LINK}\" == \"\" ]]; then\r\n echo -e \"defaulting to recommedned as the version requested was invalid.\"\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')\r\n else\r\n DOWNLOAD_LINK=$(echo https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/${VERSION_LINK})\r\n fi\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then\r\n if curl --output /dev/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else\r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\necho -e \"Running curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*/}\"\r\n\r\ncurl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*/}\r\n\r\necho \"Extracting fivem files\"\r\n\r\nFILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${DOWNLOAD_LINK##*/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${DOWNLOAD_LINK##*/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${DOWNLOAD_LINK##*/}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n exit 2\r\nfi\r\n\r\nrm -rf ${DOWNLOAD_LINK##*/} run.sh\r\n\r\nif [ -e server.cfg ]; then\r\n echo \"Skipping downloading default server config file as one already exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https://raw.githubusercontent.com/parkervcp/eggs/master/game_eggs/gta/fivem/server.cfg >>server.cfg\r\nfi\r\n\r\n# Map GAME_NAME to GAME_TYPE before writing to server.cfg\r\nif [ \"${TXHOST_GAME_NAME}\" == \"fivem\" ]; then\r\n GAME_TYPE=\"gta5\"\r\nelif [ \"${TXHOST_GAME_NAME}\" == \"redm\" ]; then\r\n GAME_TYPE=\"rdr3\"\r\nelse\r\n echo \"Invalid GAME_NAME specified: ${TXHOST_GAME_NAME}\"\r\n exit 1\r\nfi \r\n\r\nCFG_FILE=\"server.cfg\"\r\n\r\n# Only proceed if server.cfg exists\r\nif [ -f \"$CFG_FILE\" ]; then\r\n # Remove old gamename block: comment and actual line\r\n sed -i '/^# set gamename/,+1d' \"$CFG_FILE\"\r\n\r\n # Append clean new block\r\n {\r\n echo \"# set gamename\"\r\n echo \"set gamename \\\"${GAME_TYPE}\\\"\"\r\n } >> \"$CFG_FILE\"\r\nelse\r\n echo \"Warning: $CFG_FILE not found. Skipping gamename insertion.\"\r\nfi\r\n\r\nmkdir -p logs/\r\n\r\necho \"install complete\"",
"container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "FiveM 许可证",
"description": "启动服务所需。在 https://portal.cfx.re/ 获取您的密钥。",
"env_variable": "FIVEM_LICENSE",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:33",
"field_type": "text"
},
{
"name": "最大玩家数",
"description": "设置 FiveM 最大玩家数量",
"env_variable": "MAX_PLAYERS",
"default_value": "48",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|between:1,48",
"field_type": "text"
},
{
"name": "服务器主机名",
"description": "在服务器浏览器中显示的名称",
"env_variable": "SERVER_HOSTNAME",
"default_value": "My new FXServer!",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
},
{
"name": "fivem版本",
"description": "要安装的 fivem 版本。无效版本将默认使用推荐版本。\n\n例如 `6013-d8ae399d15680da569022f57ab7f2474d307c821`\n\n您可以从这里获取最新版本 - https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/",
"env_variable": "FIVEM_VERSION",
"default_value": "recommended",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:50",
"field_type": "text"
},
{
"name": "下载链接",
"description": "这是下载 fivem 的链接。仅用于安装脚本。您链接到的文件需要是 fx.tar.zx 文件。\n\n示例:\nhttps://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/6013-d8ae399d15680da569022f57ab7f2474d307c821/fx.tar.xz",
"env_variable": "DOWNLOAD_URL",
"default_value": "",
"user_viewable": false,
"user_editable": false,
"rules": "string|nullable",
"field_type": "text"
},
{
"name": "Steam Web API密钥",
"description": "使用你的 Steam WebApiKey 或设置为 'none'。在 https://steamcommunity.com/dev/apikey/ 获取你的密钥。",
"env_variable": "STEAM_WEBAPIKEY",
"default_value": "none",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
},
{
"name": "txAdmin 端口",
"description": "txAdmin面板的端口",
"env_variable": "TXHOST_TXA_PORT",
"default_value": "40120",
"user_viewable": true,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "启用 txadmin",
"description": "启用txadmin。\n\n设为1以启用。(默认为0表示禁用)",
"env_variable": "TXADMIN_ENABLE",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "游戏名称",
"description": "限制仅运行 FiveM 或 RedM 服务器。 \n设置页面将只显示下方指定游戏的相关配方! \n选项为:fivem 或 redm",
"env_variable": "TXHOST_GAME_NAME",
"default_value": "fivem",
"user_viewable": true,
"user_editable": true,
"rules": "required|in:fivem,redm",
"field_type": "text"
},
{
"name": "游戏类型",
"description": "要使用的值:gta5(对应FiveM)和rdr3(对应RedM) \n! 不要填写任何值,它会读取游戏名称变量并自动设置正确的值 !",
"env_variable": "GAME_TYPE",
"default_value": "",
"user_viewable": false,
"user_editable": false,
"rules": "string|nullable",
"field_type": "text"
},
{
"name": "TXHOST 数据路径",
"description": "TX Admin 的位置",
"env_variable": "TXHOST_DATA_PATH",
"default_value": "/home/container/txData",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
"field_type": "text"
}
]
}附属文件
暂无附属文件
Fork 关系
查看关系图暂无 Fork,成为第一个 Fork 的人吧!
统计
106
浏览
8
下载
0
星标
0
复刻
作者
飒
飒爽师叔
UID: 1
279 预设
·
2026-06