Add FiveM server template with dual deployment modes (#393)

* feat: Added fivem server

* feat: add FiveM server template with dual deployment modes

feat: add FiveM server template with dual deployment modes

- Add docker-compose.yml with spritsail/fivem image
- Support both standard FiveM server and txAdmin web interface modes
- Configure environment variables for license key management
- Add comprehensive documentation for deployment modes
- Include template.toml with optional license key configuration
- Add FiveM logo and meta.json entry
- Support persistent storage for config and txAdmin data
- Configure proper port mapping (30120 game, 40120 web UI)
- Add interactive TTY setup required for FiveM container

Template supports two modes:
- Standard: Direct server with LICENSE_KEY env var
- txAdmin: Web management with NO_DEFAULT_CONFIG=1

* docs: add deployment mode awareness to FiveM docker-compose

docs: clarify FiveM deployment modes in docker-compose

Add detailed comments explaining standard server vs txAdmin modes
to prevent configuration errors and licensing issues.

* Added all env variables.

* fix: follow Dokploy template.toml format
This commit is contained in:
Shishir Ahmed
2025-09-28 02:38:46 +06:00
committed by GitHub
parent 87970b2d3b
commit eaf5fd5f7e
4 changed files with 86 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
# docker-compose.yml
#
# IMPORTANT: FiveM Template - Two Deployment Modes
#
# MODE 1: Standard FiveM Server
# - Set LICENSE_KEY environment variable (get free from https://forum.fivem.net/)
# - Leave NO_DEFAULT_CONFIG empty or unset
# - Server configured via /config files
# - No web management interface
#
# MODE 2: txAdmin Web Interface
# - Set NO_DEFAULT_CONFIG=1
# - DO NOT set LICENSE_KEY (configure via web UI)
# - Access web management at https://your-domain
# - License configured through txAdmin interface
#
# WARNING: Don't mix modes! Setting both LICENSE_KEY and NO_DEFAULT_CONFIG=1 causes errors
#
services:
fivem:
image: spritsail/fivem:latest
restart: unless-stopped
tty: true
stdin_open: true
environment:
- LICENSE_KEY=${license_key}
- RCON_PASSWORD=${rcon_password}
- NO_DEFAULT_CONFIG=${NO_DEFAULT_CONFIG:-}
volumes:
- fivem_config:/config
- fivem_txdata:/txData
ports:
- 30120:30120
- 30120:30120/udp
- 40120
labels:
- "traefik.enable=true"
volumes:
fivem_config:
fivem_txdata:

10
blueprints/fivem/logo.svg Normal file
View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1961px" height="2160px" style="shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd" xmlns:xlink="http://www.w3.org/1999/xlink">
<g><path style="opacity:0.994" fill="#fe7000" d="M 793.5,34.5 C 797.337,35.1338 801.17,35.8005 805,36.5C 928.021,36.8111 1051.35,36.4778 1175,35.5C 1176.84,36.0495 1178.34,37.0495 1179.5,38.5C 1173.77,46.8993 1166.43,53.5659 1157.5,58.5C 1153.31,64.8562 1147.98,70.0229 1141.5,74C 997.672,209.815 853.005,345.148 707.5,480C 702.505,485.995 697.172,491.661 691.5,497C 658.241,525.59 626.241,555.59 595.5,587C 593.254,588.039 591.087,589.206 589,590.5C 588.075,589.953 587.242,589.287 586.5,588.5C 594.659,572.173 601.159,555.173 606,537.5C 617.812,506.726 628.812,475.726 639,444.5C 684.797,317.11 729.797,189.443 774,61.5C 777.464,53.6078 780.63,45.6078 783.5,37.5C 786.759,36.0203 790.092,35.0203 793.5,34.5 Z"/></g>
<g><path style="opacity:0.995" fill="#fe7000" d="M 1218.5,46.5 C 1219.82,46.33 1220.99,46.6634 1222,47.5C 1235.62,84.4021 1248.95,121.402 1262,158.5C 1267.06,164.051 1267.73,170.051 1264,176.5C 1247.16,190.342 1231.99,205.842 1218.5,223C 1213.47,225.2 1209.13,228.367 1205.5,232.5C 1150.5,286.333 1095.5,340.167 1040.5,394C 1008.81,423.02 977.814,452.687 947.5,483C 915.186,516.313 881.852,548.647 847.5,580C 721.909,703.589 595.576,826.589 468.5,949C 458.212,959.457 447.879,969.623 437.5,979.5C 436.386,978.277 436.219,976.944 437,975.5C 444.83,953.505 453.497,931.839 463,910.5C 465.246,904.67 466.913,898.67 468,892.5C 483.467,856.24 497.8,819.573 511,782.5C 521.363,759.425 530.363,735.758 538,711.5C 543.348,700.484 551.181,691.651 561.5,685C 620.745,626.413 680.412,568.747 740.5,512C 818.932,435.736 897.266,359.236 975.5,282.5C 1036.18,225.324 1096.18,167.157 1155.5,108C 1177.34,88.3307 1198.34,67.8307 1218.5,46.5 Z"/></g>
<g><path style="opacity:0.991" fill="#fe7000" d="M 1296.5,271.5 C 1299.55,270.855 1301.71,271.855 1303,274.5C 1306.27,283.99 1308.94,293.657 1311,303.5C 1316.38,314.968 1321.38,326.635 1326,338.5C 1326.67,340.833 1326.67,343.167 1326,345.5C 1217.46,451.714 1109.63,557.88 1002.5,664C 1001.5,664.667 1000.5,664.667 999.5,664C 992.896,638.813 986.229,613.646 979.5,588.5C 979.515,586.366 980.015,584.366 981,582.5C 1004.08,560.416 1026.92,537.916 1049.5,515C 1053.5,511.667 1057.5,508.333 1061.5,505C 1080.26,486.014 1098.93,466.848 1117.5,447.5C 1126.79,438.2 1136.45,429.367 1146.5,421C 1196.31,371.019 1246.31,321.186 1296.5,271.5 Z"/></g>
<g><path style="opacity:0.998" fill="#fe7000" d="M 1379.5,483.5 C 1381.78,484.868 1382.45,486.702 1381.5,489C 1383.67,497.521 1386.84,505.688 1391,513.5C 1403.33,557.157 1417.66,600.157 1434,642.5C 1446.8,685.574 1460.8,728.24 1476,770.5C 1488.4,812.368 1502.4,853.701 1518,894.5C 1525.87,921.651 1534.2,948.651 1543,975.5C 1556.04,1010.35 1567.71,1045.68 1578,1081.5C 1586.35,1104.2 1594.69,1126.86 1603,1149.5C 1605.18,1158.54 1607.51,1167.54 1610,1176.5C 1617.06,1196.35 1623.73,1216.35 1630,1236.5C 1634.13,1247.9 1638.47,1259.23 1643,1270.5C 1655.67,1314.84 1670.33,1358.5 1687,1401.5C 1689.33,1410.5 1691.67,1419.5 1694,1428.5C 1709.87,1472.93 1725.21,1517.59 1740,1562.5C 1748.73,1593.36 1759.06,1623.69 1771,1653.5C 1778.87,1680.65 1787.2,1707.65 1796,1734.5C 1809.06,1769.33 1820.72,1804.67 1831,1840.5C 1838.71,1862.26 1846.71,1883.92 1855,1905.5C 1866.96,1947.42 1880.63,1988.75 1896,2029.5C 1898.18,2037.88 1900.51,2046.21 1903,2054.5C 1910,2074.17 1917,2093.83 1924,2113.5C 1924.67,2115.83 1924.67,2118.17 1924,2120.5C 1922.33,2121.17 1920.67,2121.83 1919,2122.5C 1757.74,2122.48 1596.9,2122.48 1436.5,2122.5C 1430.94,2123.88 1427.44,2121.88 1426,2116.5C 1422.98,2103.1 1419.65,2089.77 1416,2076.5C 1406.19,2046.4 1397.19,2016.07 1389,1985.5C 1367.2,1915.42 1346.2,1845.09 1326,1774.5C 1317.57,1750.89 1310.57,1726.89 1305,1702.5C 1280.09,1618.44 1254.76,1534.44 1229,1450.5C 1212.8,1392.02 1196.13,1333.69 1179,1275.5C 1171.95,1257.28 1166.29,1238.61 1162,1219.5C 1118.35,1073.68 1074.85,928.177 1031.5,783C 1031.36,780.307 1032.36,778.14 1034.5,776.5C 1052.14,763.509 1068.8,749.343 1084.5,734C 1093.5,727 1102.5,720 1111.5,713C 1135.77,692.402 1159.77,671.402 1183.5,650C 1188.01,647.247 1192.34,644.247 1196.5,641C 1199.46,637.034 1202.8,633.367 1206.5,630C 1237.12,604.718 1267.12,578.718 1296.5,552C 1322.43,531.732 1347.43,510.399 1371.5,488C 1374.1,486.205 1376.77,484.705 1379.5,483.5 Z"/></g>
<g><path style="opacity:0.992" fill="#fe7000" d="M 931.5,632.5 C 932.117,632.611 932.617,632.944 933,633.5C 933.167,637.667 933.333,641.833 933.5,646C 933.116,671.808 933.116,697.475 933.5,723C 933.617,728.371 932.117,733.204 929,737.5C 923.634,742.441 918.134,747.275 912.5,752C 807.912,855.586 702.912,958.92 597.5,1062C 593.167,1065.67 588.833,1069.33 584.5,1073C 543.166,1114.67 501.499,1156 459.5,1197C 453.46,1202.71 447.126,1208.04 440.5,1213C 434.35,1219.98 428.017,1226.82 421.5,1233.5C 396.265,1257.9 370.932,1282.07 345.5,1306C 341.469,1310.03 337.803,1314.36 334.5,1319C 332.833,1320.33 331.167,1321.67 329.5,1323C 326.888,1323.74 325.222,1322.74 324.5,1320C 327.854,1312.95 331.021,1305.78 334,1298.5C 343.654,1271.19 353.32,1243.85 363,1216.5C 365,1213.17 367,1209.83 369,1206.5C 398.674,1178.83 427.008,1149.83 454,1119.5C 492.469,1081.03 530.802,1042.7 569,1004.5C 599.969,971.53 631.636,939.197 664,907.5C 668.638,902.192 673.304,896.859 678,891.5C 763.284,805.389 847.784,719.056 931.5,632.5 Z"/></g>
<g><path style="opacity:0.997" fill="#fe7000" d="M 828.5,983.5 C 830.75,983.181 832.75,983.681 834.5,985C 820.8,1028.99 808.967,1073.16 799,1117.5C 794.973,1130.87 790.973,1144.2 787,1157.5C 781.153,1182.56 775.153,1207.56 769,1232.5C 768.317,1235.38 767.15,1238.05 765.5,1240.5C 758.693,1266.76 752.193,1293.09 746,1319.5C 742.578,1329.93 739.911,1340.6 738,1351.5C 732.415,1367.84 728.081,1384.51 725,1401.5C 724.194,1404.45 722.861,1407.11 721,1409.5C 709.896,1459.91 696.896,1509.91 682,1559.5C 680.049,1570.25 677.716,1580.92 675,1591.5C 662.63,1635.66 650.63,1679.99 639,1724.5C 635.898,1735.34 633.565,1746.34 632,1757.5C 627.661,1772.55 623.328,1787.55 619,1802.5C 615.822,1814.39 613.156,1826.39 611,1838.5C 608.998,1844.51 606.998,1850.51 605,1856.5C 593.266,1906.5 580.266,1956.17 566,2005.5C 557.849,2040.43 548.849,2075.09 539,2109.5C 538.822,2112.94 538.655,2116.27 538.5,2119.5C 537.335,2120.58 536.002,2121.42 534.5,2122C 370.648,2122.64 206.648,2122.64 42.5,2122C 41.4086,2119.94 41.2419,2117.77 42,2115.5C 50.4644,2087.67 60.4644,2060.34 72,2033.5C 85.1459,1994.87 99.1459,1956.54 114,1918.5C 116.343,1908.47 119.676,1898.8 124,1889.5C 137.333,1851.5 150.667,1813.5 164,1775.5C 177.945,1738.61 191.611,1701.61 205,1664.5C 209.729,1654.61 213.396,1644.27 216,1633.5C 222.541,1613.88 229.875,1594.54 238,1575.5C 258.416,1554.42 278.749,1533.42 299,1512.5C 475.818,1336.85 652.318,1160.52 828.5,983.5 Z"/></g>
</svg>

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

@@ -0,0 +1,17 @@
[variables]
main_domain = "${domain}"
license_key = "${password:32}"
rcon_password = "${password:16}"
[config]
env = [
"LICENSE_KEY=${license_key}",
"RCON_PASSWORD=${rcon_password}",
"NO_DEFAULT_CONFIG=${NO_DEFAULT_CONFIG:-}"
]
mounts = []
[[config.domains]]
serviceName = "fivem"
port = 40120
host = "${main_domain}"

View File

@@ -1967,6 +1967,24 @@
"self-hosted"
]
},
{
"id": "fivem",
"name": "FiveM Server",
"version": "latest",
"description": "A modded GTA V multiplayer server with optional txAdmin web interface for easy server management.",
"logo": "logo.svg",
"links": {
"github": "https://github.com/spritsail/fivem",
"website": "https://fivem.net/",
"docs": "https://docs.fivem.net/docs/server-manual/"
},
"tags": [
"gaming",
"gta",
"multiplayer",
"server"
]
},
{
"id": "flagsmith",
"name": "Flagsmith",