FiveM ONLY supports amd64. arm64 is NOT supported (like Oracle free cloud)
Pterodactyl will not be providing support for FiveM. You are free to run a FiveM server but no support will be provided in the Pterodactyl Discord, check the discord annoucement below for details.
Worth a read if you plan on running a FiveM server Pterodactyl Discord Announcement
FiveM is a modification for Grand Theft Auto V enabling you to play multiplayer on customized dedicated servers.
Currently the script can get versions from the builds site.
The FIVEM_VERSION
variable.
latest
which is the latest recommended2431-350dd7bd5c0176216c38625ad5b1108ead44674d
.The DOWNLOAD_URL
only needs to be used if they turn on ddos protection. The variable needs to point to a fx.tar.xz
file as I am too lazy to update the entire script.
txAdmin is now supported and disabled by default. You set TXADMIN_ENABLED
to 1
to enable it.
The last update to the egg changes the server to use txadmin to run. On first startup it will print a key to use to sign into the txadmin panel.
Ports required to run the server in a table format.
Port | default |
---|---|
Game | 30110 |
Game+1 | 30120 |
txAdmin | 40120 |
Name | Tag |
---|---|
ghcr.io/ptero-eggs/yolks:debian | ghcr.io/ptero-eggs/yolks:debian |
Required to start the service. Get your keys at https://keymaster.fivem.net/
Set the fivem max play count
The name that shows up in the server browser
The fivem version that is to be installed. Invalid versions will default to recommended. An example is `6013-d8ae399d15680da569022f57ab7f2474d307c821` You can get the latest version from here - https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/
This is the link to download fivem from. This is only used in the install script. The file you link to needs to be an fx.tar.zx file. Example: https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/6013-d8ae399d15680da569022f57ab7f2474d307c821/fx.tar.xz
Use your Steam WebApiKey or set to 'none'. Get your key at https://steamcommunity.com/dev/apikey/
The port for the txAdmin panel
Enables txadmin. set to 1 to enable. (default is 0 for false)
#!/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/ptero-eggs/game-eggs/main/gta/fivem/server.cfg >>server.cfg
fi
mkdir -p logs/
echo "install complete"
Installation Image | ghcr.io/ptero-eggs/installers:debian | Installation Entrypoint | bash |
---|