[{"data":1,"prerenderedAt":865},["ShallowReactive",2],{"navigation":3,"page-\u002Fgetting-started\u002Fconfiguration\u002Fconfigure":200,"\u002Fgetting-started\u002Fconfiguration\u002Fconfigure-surround":857},[4,117,181,194],{"title":5,"path":6,"stem":7,"children":8},"Erste Schritte","\u002Fde\u002Fgetting-started","de\u002F1.getting-started\u002F1.index",[9,10,14,18,22,26,30,56,69,85,107],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Funktionen","\u002Fde\u002Fgetting-started\u002Ffeatures","de\u002F1.getting-started\u002F1.features",{"title":15,"path":16,"stem":17},"Demo","\u002Fde\u002Fgetting-started\u002Fdemo","de\u002F1.getting-started\u002F2.demo",{"title":19,"path":20,"stem":21},"Anforderungen","\u002Fde\u002Fgetting-started\u002Frequirements","de\u002F1.getting-started\u002F2.requirements",{"title":23,"path":24,"stem":25},"Komponenten","\u002Fde\u002Fgetting-started\u002Fcomponents","de\u002F1.getting-started\u002F3.components",{"title":27,"path":28,"stem":29},"Versionierung","\u002Fde\u002Fgetting-started\u002Fversioning","de\u002F1.getting-started\u002F3.versioning",{"title":31,"path":32,"stem":33,"children":34,"page":55},"Installation","\u002Fde\u002Fgetting-started\u002Finstallation","de\u002F1.getting-started\u002F4.installation",[35,39,43,47,51],{"title":36,"path":37,"stem":38},"Installationsmethoden","\u002Fde\u002Fgetting-started\u002Finstallation\u002Fmethods","de\u002F1.getting-started\u002F4.installation\u002F1.methods",{"title":40,"path":41,"stem":42},"Cloud","\u002Fde\u002Fgetting-started\u002Finstallation\u002Fcloud","de\u002F1.getting-started\u002F4.installation\u002F2.cloud",{"title":44,"path":45,"stem":46},"Verwendung von Docker","\u002Fde\u002Fgetting-started\u002Finstallation\u002Fcontainer-docker","de\u002F1.getting-started\u002F4.installation\u002F3.container-docker",{"title":48,"path":49,"stem":50},"Kubernetes: Verwendung von Helm","\u002Fde\u002Fgetting-started\u002Finstallation\u002Fkubernetes-helm","de\u002F1.getting-started\u002F4.installation\u002F4.kubernetes-helm",{"title":52,"path":53,"stem":54},"Ersteinrichtung abschließen","\u002Fde\u002Fgetting-started\u002Finstallation\u002Fpost-install-steps","de\u002F1.getting-started\u002F4.installation\u002F6.post-install-steps",false,{"title":57,"path":58,"stem":59,"children":60,"page":55},"Konfiguration","\u002Fde\u002Fgetting-started\u002Fconfiguration","de\u002F1.getting-started\u002F5.configuration",[61,65],{"title":62,"path":63,"stem":64},"FiveNet konfigurieren","\u002Fde\u002Fgetting-started\u002Fconfiguration\u002Fconfigure","de\u002F1.getting-started\u002F5.configuration\u002F2.configure",{"title":66,"path":67,"stem":68},"DBSync: Installieren und konfigurieren","\u002Fde\u002Fgetting-started\u002Fconfiguration\u002Fdbsync","de\u002F1.getting-started\u002F5.configuration\u002F3.dbsync",{"title":70,"path":71,"stem":72,"children":73,"page":55},"Gameserver","\u002Fde\u002Fgetting-started\u002Fgameserver","de\u002F1.getting-started\u002F6.gameserver",[74],{"title":75,"path":76,"stem":77,"children":78,"page":55},"FiveM Plugin","\u002Fde\u002Fgetting-started\u002Fgameserver\u002Ffivem-plugin","de\u002F1.getting-started\u002F6.gameserver\u002F1.fivem-plugin",[79,82],{"title":31,"path":80,"stem":81},"\u002Fde\u002Fgetting-started\u002Fgameserver\u002Ffivem-plugin\u002Finstallation","de\u002F1.getting-started\u002F6.gameserver\u002F1.fivem-plugin\u002F1.installation",{"title":57,"path":83,"stem":84},"\u002Fde\u002Fgetting-started\u002Fgameserver\u002Ffivem-plugin\u002Fconfiguration","de\u002F1.getting-started\u002F6.gameserver\u002F1.fivem-plugin\u002F2.configuration",{"title":86,"path":87,"stem":88,"children":89},"Referenz","\u002Fde\u002Fgetting-started\u002Freference","de\u002F1.getting-started\u002F7.reference\u002Findex",[90,91,95,99,103],{"title":86,"path":87,"stem":88},{"title":92,"path":93,"stem":94},"Erweiterte Konfiguration","\u002Fde\u002Fgetting-started\u002Freference\u002Fadvanced","de\u002F1.getting-started\u002F7.reference\u002Fadvanced",{"title":96,"path":97,"stem":98},"Konfigurationsdatei-Referenz","\u002Fde\u002Fgetting-started\u002Freference\u002Fconfig-reference","de\u002F1.getting-started\u002F7.reference\u002Fconfig-reference",{"title":100,"path":101,"stem":102},"Datenbankeinrichtung","\u002Fde\u002Fgetting-started\u002Freference\u002Fdatabase-setup","de\u002F1.getting-started\u002F7.reference\u002Fdatabase-setup",{"title":104,"path":105,"stem":106},"Befehls-Flags","\u002Fde\u002Fgetting-started\u002Freference\u002Fflags","de\u002F1.getting-started\u002F7.reference\u002Fflags",{"title":108,"path":109,"stem":110,"children":111},"Fehlerbehebung","\u002Fde\u002Fgetting-started\u002Ftroubleshooting","de\u002F1.getting-started\u002F8.troubleshooting\u002Findex",[112,113],{"title":108,"path":109,"stem":110},{"title":114,"path":115,"stem":116},"Datenbank- und Installationsfehlerbehebung","\u002Fde\u002Fgetting-started\u002Ftroubleshooting\u002Finstallation-issues","de\u002F1.getting-started\u002F8.troubleshooting\u002Finstallation-issues",{"title":118,"path":119,"stem":120,"children":121},"Benutzerhandbücher","\u002Fde\u002Fuser-guides","de\u002F3.user-guides\u002F0.index",[122,123,127,131,135,145,149,153,157,161,165,169,173,177],{"title":118,"path":119,"stem":120},{"title":124,"path":125,"stem":126},"Systemanforderungen","\u002Fde\u002Fuser-guides\u002Fsystem-requirements","de\u002F3.user-guides\u002F0.system-requirements",{"title":128,"path":129,"stem":130},"Bürger","\u002Fde\u002Fuser-guides\u002Fcitizens","de\u002F3.user-guides\u002F1.citizens",{"title":132,"path":133,"stem":134},"Fahrzeuge","\u002Fde\u002Fuser-guides\u002Fvehicles","de\u002F3.user-guides\u002F2.vehicles",{"title":136,"path":137,"stem":138,"children":139},"Dokumente","\u002Fde\u002Fuser-guides\u002Fdocuments","de\u002F3.user-guides\u002F3.documents\u002Findex",[140,141],{"title":136,"path":137,"stem":138},{"title":142,"path":143,"stem":144},"Vorlagen","\u002Fde\u002Fuser-guides\u002Fdocuments\u002Ftemplates","de\u002F3.user-guides\u002F3.documents\u002Ftemplates",{"title":146,"path":147,"stem":148},"Jobs","\u002Fde\u002Fuser-guides\u002Fjobs","de\u002F3.user-guides\u002F3.jobs",{"title":150,"path":151,"stem":152},"Kalender","\u002Fde\u002Fuser-guides\u002Fcalendar","de\u002F3.user-guides\u002F4.calendar",{"title":154,"path":155,"stem":156},"Livemap","\u002Fde\u002Fuser-guides\u002Flivemap","de\u002F3.user-guides\u002F5.livemap",{"title":158,"path":159,"stem":160},"Einsatzzentrale","\u002Fde\u002Fuser-guides\u002Fcentrum","de\u002F3.user-guides\u002F6.centrum",{"title":162,"path":163,"stem":164},"Mailer","\u002Fde\u002Fuser-guides\u002Fmailer","de\u002F3.user-guides\u002F6.mailer",{"title":166,"path":167,"stem":168},"Einstellungen","\u002Fde\u002Fuser-guides\u002Fsettings","de\u002F3.user-guides\u002F7.settings",{"title":170,"path":171,"stem":172},"Sprachen (i18n)","\u002Fde\u002Fuser-guides\u002Fi18n","de\u002F3.user-guides\u002F8.i18n",{"title":174,"path":175,"stem":176},"iOS-App","\u002Fde\u002Fuser-guides\u002Fios-app","de\u002F3.user-guides\u002F9.ios-app",{"title":178,"path":179,"stem":180},"StreamDeck Plugin","\u002Fde\u002Fuser-guides\u002Fplugin-streamdeck","de\u002F3.user-guides\u002F9.plugin-streamdeck",{"title":182,"path":183,"stem":184,"children":185},"Entwicklung","\u002Fde\u002Fdevelopment","de\u002F8.development\u002F1.index",[186,187,191],{"title":182,"path":183,"stem":184},{"title":188,"path":189,"stem":190},"User Activity","\u002Fde\u002Fdevelopment\u002Fuser-activity","de\u002F8.development\u002F5.user-activity",{"title":170,"path":192,"stem":193},"\u002Fde\u002Fdevelopment\u002Fi18n","de\u002F8.development\u002Fi18n",{"title":195,"path":196,"stem":197,"children":198},"Design","\u002Fde\u002Fdesign","de\u002F9.design\u002F1.index",[199],{"title":195,"path":196,"stem":197},{"id":201,"title":202,"body":203,"description":849,"extension":850,"links":851,"meta":852,"navigation":498,"path":853,"redirect":851,"seo":854,"stem":855,"__hash__":856},"content_en\u002F1.getting-started\u002F5.configuration\u002F2.configure.md","Configure FiveNet",{"type":204,"value":205,"toc":836},"minimark",[206,210,219,224,227,251,254,261,264,289,299,303,306,384,387,394,398,401,404,472,475,551,554,558,565,591,599,603,609,635,645,649,652,693,696,700,703,742,753,757,760,786,797,801,804,821,832],[207,208,209],"p",{},"Use this guide after choosing a deployment method and before setting up DBSync or the FiveM plugin. It covers the minimum configuration required for a working FiveNet installation.",[207,211,212,213,218],{},"For every option and its default value, see the ",[214,215,217],"a",{"href":216},"\u002Fgetting-started\u002Freference\u002Fconfig-reference","Config File Reference",". The example file in the FiveNet repository remains the source of truth for the complete configuration.",[220,221,223],"h2",{"id":222},"before-you-begin","Before You Begin",[207,225,226],{},"Make sure you have:",[228,229,230,234,237,240,243],"ul",{},[231,232,233],"li",{},"A supported MySQL or MariaDB database.",[231,235,236],{},"A NATS server with JetStream enabled.",[231,238,239],{},"A public HTTPS URL for FiveNet, or a plan for exposing it through a reverse proxy.",[231,241,242],{},"A storage location for uploads, either a persistent local directory or S3-compatible storage.",[231,244,245,246,250],{},"The FiveNet ",[247,248,249],"code",{},"config.example.yaml"," file from the same release as the FiveNet image or binary you are deploying.",[207,252,253],{},"If you are using Docker or Helm, follow the deployment guide first so you know where the configuration file is mounted and which services are available by their internal hostnames.",[220,255,257,258],{"id":256},"_1-create-configyaml","1. Create ",[247,259,260],{},"config.yaml",[207,262,263],{},"Copy the example file and keep it with the deployment files. Do not edit the example file in place:",[265,266,271],"pre",{"className":267,"code":268,"language":269,"meta":270,"style":270},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","cp config.example.yaml config.yaml\n","bash","",[247,272,273],{"__ignoreMap":270},[274,275,278,282,286],"span",{"class":276,"line":277},"line",1,[274,279,281],{"class":280},"sBMFI","cp",[274,283,285],{"class":284},"sfazB"," config.example.yaml",[274,287,288],{"class":284}," config.yaml\n",[207,290,291,292,294,295,298],{},"For containerized deployments, mount the completed ",[247,293,260],{}," into the location expected by the deployment template. FiveNet searches for the file in the current working directory and then in ",[247,296,297],{},"\u002Fconfig",".",[220,300,302],{"id":301},"_2-configure-the-public-url","2. Configure the Public URL",[207,304,305],{},"Set the URL users will open in their browser:",[265,307,311],{"className":308,"code":309,"language":310,"meta":270,"style":270},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","http:\n  publicURL: \"https:\u002F\u002Ffivenet.example.com\"\n  origins:\n    - \"https:\u002F\u002Ffivenet.example.com\"\n  sessions:\n    domain: \"fivenet.example.com\"\n","yaml",[247,312,313,323,341,349,361,369],{"__ignoreMap":270},[274,314,315,319],{"class":276,"line":277},[274,316,318],{"class":317},"swJcz","http",[274,320,322],{"class":321},"sMK4o",":\n",[274,324,326,329,332,335,338],{"class":276,"line":325},2,[274,327,328],{"class":317},"  publicURL",[274,330,331],{"class":321},":",[274,333,334],{"class":321}," \"",[274,336,337],{"class":284},"https:\u002F\u002Ffivenet.example.com",[274,339,340],{"class":321},"\"\n",[274,342,344,347],{"class":276,"line":343},3,[274,345,346],{"class":317},"  origins",[274,348,322],{"class":321},[274,350,352,355,357,359],{"class":276,"line":351},4,[274,353,354],{"class":321},"    -",[274,356,334],{"class":321},[274,358,337],{"class":284},[274,360,340],{"class":321},[274,362,364,367],{"class":276,"line":363},5,[274,365,366],{"class":317},"  sessions",[274,368,322],{"class":321},[274,370,372,375,377,379,382],{"class":276,"line":371},6,[274,373,374],{"class":317},"    domain",[274,376,331],{"class":321},[274,378,334],{"class":321},[274,380,381],{"class":284},"fivenet.example.com",[274,383,340],{"class":321},[207,385,386],{},"The URL, browser origin, and session domain must match the domain used by your reverse proxy. If you use a separate hostname for API or plugin traffic, add that origin where required by your deployment.",[207,388,389,390,393],{},"Review ",[247,391,392],{},"http.trustedProxies"," when FiveNet is behind NGINX, Traefik, Cloudflare, or another proxy. Only list proxy addresses or networks you control.",[220,395,397],{"id":396},"_3-generate-and-store-secrets","3. Generate and Store Secrets",[207,399,400],{},"Generate unique values for the application secret, session cookie secret, and JWT secret. Keep them stable after deployment and do not commit them to a public repository.",[207,402,403],{},"For example, generate a value using the command for your operating system:",[405,406,407,428],"code-group",{},[265,408,411],{"className":267,"code":409,"filename":410,"language":269,"meta":270,"style":270},"openssl rand -base64 32\n","Linux \u002F macOS",[247,412,413],{"__ignoreMap":270},[274,414,415,418,421,424],{"class":276,"line":277},[274,416,417],{"class":280},"openssl",[274,419,420],{"class":284}," rand",[274,422,423],{"class":284}," -base64",[274,425,427],{"class":426},"sbssI"," 32\n",[265,429,434],{"className":430,"code":431,"filename":432,"language":433,"meta":270,"style":270},"language-powershell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","[Convert]::ToBase64String([Security.Cryptography.RandomNumberGenerator]::GetBytes(32))\n","Windows","powershell",[247,435,436],{"__ignoreMap":270},[274,437,438,441,445,448,452,455,458,460,463,466,469],{"class":276,"line":277},[274,439,440],{"class":321},"[",[274,442,444],{"class":443},"spNyl","Convert",[274,446,447],{"class":321},"]",[274,449,451],{"class":450},"sTEyZ","::ToBase64String",[274,453,454],{"class":321},"([",[274,456,457],{"class":443},"Security.Cryptography.RandomNumberGenerator",[274,459,447],{"class":321},[274,461,462],{"class":450},"::GetBytes",[274,464,465],{"class":321},"(",[274,467,468],{"class":426},"32",[274,470,471],{"class":321},"))\n",[207,473,474],{},"Set the generated values in the corresponding options:",[265,476,478],{"className":308,"code":477,"language":310,"meta":270,"style":270},"secret: \"CHANGE_ME\"\n\nhttp:\n  sessions:\n    cookieSecret: \"CHANGE_ME\"\n\njwt:\n  secret: \"CHANGE_ME\"\n",[247,479,480,494,500,506,512,525,529,537],{"__ignoreMap":270},[274,481,482,485,487,489,492],{"class":276,"line":277},[274,483,484],{"class":317},"secret",[274,486,331],{"class":321},[274,488,334],{"class":321},[274,490,491],{"class":284},"CHANGE_ME",[274,493,340],{"class":321},[274,495,496],{"class":276,"line":325},[274,497,499],{"emptyLinePlaceholder":498},true,"\n",[274,501,502,504],{"class":276,"line":343},[274,503,318],{"class":317},[274,505,322],{"class":321},[274,507,508,510],{"class":276,"line":351},[274,509,366],{"class":317},[274,511,322],{"class":321},[274,513,514,517,519,521,523],{"class":276,"line":363},[274,515,516],{"class":317},"    cookieSecret",[274,518,331],{"class":321},[274,520,334],{"class":321},[274,522,491],{"class":284},[274,524,340],{"class":321},[274,526,527],{"class":276,"line":371},[274,528,499],{"emptyLinePlaceholder":498},[274,530,532,535],{"class":276,"line":531},7,[274,533,534],{"class":317},"jwt",[274,536,322],{"class":321},[274,538,540,543,545,547,549],{"class":276,"line":539},8,[274,541,542],{"class":317},"  secret",[274,544,331],{"class":321},[274,546,334],{"class":321},[274,548,491],{"class":284},[274,550,340],{"class":321},[207,552,553],{},"Changing these values later can invalidate sessions or tokens. Treat sync API tokens as secrets as well.",[220,555,557],{"id":556},"_4-configure-the-fivenet-database","4. Configure the FiveNet Database",[207,559,560,561,564],{},"Set ",[247,562,563],{},"database.dsn"," to the MySQL or MariaDB database used by FiveNet:",[265,566,568],{"className":308,"code":567,"language":310,"meta":270,"style":270},"database:\n  dsn: \"DB_USER:DB_PASS@tcp(DB_HOST:DB_PORT)\u002FDB_NAME?collation=utf8mb4_unicode_ci&parseTime=True&loc=Europe%2FBerlin\"\n",[247,569,570,577],{"__ignoreMap":270},[274,571,572,575],{"class":276,"line":277},[274,573,574],{"class":317},"database",[274,576,322],{"class":321},[274,578,579,582,584,586,589],{"class":276,"line":325},[274,580,581],{"class":317},"  dsn",[274,583,331],{"class":321},[274,585,334],{"class":321},[274,587,588],{"class":284},"DB_USER:DB_PASS@tcp(DB_HOST:DB_PORT)\u002FDB_NAME?collation=utf8mb4_unicode_ci&parseTime=True&loc=Europe%2FBerlin",[274,590,340],{"class":321},[207,592,593,594,598],{},"Use a database user with the permissions required for FiveNet migrations and normal operation. The configured collation should match the database and tables. See ",[214,595,597],{"href":596},"\u002Fgetting-started\u002Freference\u002Fdatabase-setup","Database Setup"," if migrations report collation or foreign-key errors.",[220,600,602],{"id":601},"_5-configure-nats","5. Configure NATS",[207,604,560,605,608],{},[247,606,607],{},"nats.url"," to the NATS server and make sure JetStream is enabled:",[265,610,612],{"className":308,"code":611,"language":310,"meta":270,"style":270},"nats:\n  url: \"nats:\u002F\u002FUSER:PASSWORD@NATS_HOST:4222\"\n",[247,613,614,621],{"__ignoreMap":270},[274,615,616,619],{"class":276,"line":277},[274,617,618],{"class":317},"nats",[274,620,322],{"class":321},[274,622,623,626,628,630,633],{"class":276,"line":325},[274,624,625],{"class":317},"  url",[274,627,331],{"class":321},[274,629,334],{"class":321},[274,631,632],{"class":284},"nats:\u002F\u002FUSER:PASSWORD@NATS_HOST:4222",[274,634,340],{"class":321},[207,636,637,638,640,641,644],{},"When FiveNet runs in Docker Compose, use the NATS service name as the hostname, such as ",[247,639,618],{},", rather than ",[247,642,643],{},"localhost",". When FiveNet runs in Kubernetes, use the NATS Service DNS name.",[220,646,648],{"id":647},"_6-enable-the-sync-api","6. Enable the Sync API",[207,650,651],{},"DBSync and the FiveM plugin use the Sync API. Enable it and create at least one long, unique token:",[265,653,655],{"className":308,"code":654,"language":310,"meta":270,"style":270},"sync:\n  enabled: true\n  apiTokens:\n    - \"CHANGE_ME_TO_A_LONG_RANDOM_TOKEN\"\n",[247,656,657,664,675,682],{"__ignoreMap":270},[274,658,659,662],{"class":276,"line":277},[274,660,661],{"class":317},"sync",[274,663,322],{"class":321},[274,665,666,669,671],{"class":276,"line":325},[274,667,668],{"class":317},"  enabled",[274,670,331],{"class":321},[274,672,674],{"class":673},"sfNiH"," true\n",[274,676,677,680],{"class":276,"line":343},[274,678,679],{"class":317},"  apiTokens",[274,681,322],{"class":321},[274,683,684,686,688,691],{"class":276,"line":351},[274,685,354],{"class":321},[274,687,334],{"class":321},[274,689,690],{"class":284},"CHANGE_ME_TO_A_LONG_RANDOM_TOKEN",[274,692,340],{"class":321},[207,694,695],{},"Use the token only in the DBSync and plugin configuration that need it. If you rotate the token, update both integrations.",[220,697,699],{"id":698},"_7-configure-upload-storage","7. Configure Upload Storage",[207,701,702],{},"The default filesystem storage is suitable for a single instance when its directory is persistent:",[265,704,706],{"className":308,"code":705,"language":310,"meta":270,"style":270},"storage:\n  type: filesystem\n  filesystem:\n    path: \u002Fdata\n",[247,707,708,715,725,732],{"__ignoreMap":270},[274,709,710,713],{"class":276,"line":277},[274,711,712],{"class":317},"storage",[274,714,322],{"class":321},[274,716,717,720,722],{"class":276,"line":325},[274,718,719],{"class":317},"  type",[274,721,331],{"class":321},[274,723,724],{"class":284}," filesystem\n",[274,726,727,730],{"class":276,"line":343},[274,728,729],{"class":317},"  filesystem",[274,731,322],{"class":321},[274,733,734,737,739],{"class":276,"line":351},[274,735,736],{"class":317},"    path",[274,738,331],{"class":321},[274,740,741],{"class":284}," \u002Fdata\n",[207,743,744,745,748,749,298],{},"Make sure ",[247,746,747],{},"\u002Fdata"," is backed by a persistent volume in Docker or Kubernetes. For multiple instances or externally managed uploads, configure the S3-compatible storage options instead. See ",[214,750,752],{"href":751},"\u002Fgetting-started\u002Freference\u002Fadvanced","Advanced Configuration",[220,754,756],{"id":755},"_8-grant-initial-configuration-access","8. Grant Initial Configuration Access",[207,758,759],{},"Give the group used by your first administrator access to configuration settings:",[265,761,763],{"className":308,"code":762,"language":310,"meta":270,"style":270},"auth:\n  configAdminGroups:\n    - admin\n",[247,764,765,772,779],{"__ignoreMap":270},[274,766,767,770],{"class":276,"line":277},[274,768,769],{"class":317},"auth",[274,771,322],{"class":321},[274,773,774,777],{"class":276,"line":325},[274,775,776],{"class":317},"  configAdminGroups",[274,778,322],{"class":321},[274,780,781,783],{"class":276,"line":343},[274,782,354],{"class":321},[274,784,785],{"class":284}," admin\n",[207,787,788,789,792,793,298],{},"You can also use ",[247,790,791],{},"auth.configAdminUsers"," for specific users. The first account still needs to be created and registered as described in ",[214,794,796],{"href":795},"\u002Fgetting-started\u002Finstallation\u002Fpost-install-steps","Complete Initial Setup",[220,798,800],{"id":799},"_9-start-and-validate-fivenet","9. Start and Validate FiveNet",[207,802,803],{},"Start the deployment using the command appropriate for your installation method. Then check:",[228,805,806,809,812,815,818],{},[231,807,808],{},"The server starts without database or NATS errors.",[231,810,811],{},"Database migrations complete successfully.",[231,813,814],{},"The configured public URL loads over HTTPS.",[231,816,817],{},"The first account can register and sign in.",[231,819,820],{},"The upload storage path is writable.",[207,822,823,824,828,829,831],{},"Once the core server is working, continue with ",[214,825,827],{"href":826},"\u002Fgetting-started\u002Fconfiguration\u002Fdbsync","DBSync"," and then ",[214,830,796],{"href":795}," to connect the gameserver and configure FiveNet in the application.",[833,834,835],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":270,"searchDepth":325,"depth":325,"links":837},[838,839,841,842,843,844,845,846,847,848],{"id":222,"depth":325,"text":223},{"id":256,"depth":325,"text":840},"1. Create config.yaml",{"id":301,"depth":325,"text":302},{"id":396,"depth":325,"text":397},{"id":556,"depth":325,"text":557},{"id":601,"depth":325,"text":602},{"id":647,"depth":325,"text":648},{"id":698,"depth":325,"text":699},{"id":755,"depth":325,"text":756},{"id":799,"depth":325,"text":800},"Configure the FiveNet server before connecting your gameserver.","md",null,{},"\u002Fgetting-started\u002Fconfiguration\u002Fconfigure",{"title":202,"description":849},"1.getting-started\u002F5.configuration\u002F2.configure","OjQ6F2y205YBu-T4pXTK6OnpfGUl1w_EwBqfCnzTs2E",[858,861],{"title":796,"path":795,"stem":859,"description":860,"children":-1},"1.getting-started\u002F4.installation\u002F6.post-install-steps","Complete the first-admin setup and connect your gameserver after the FiveNet server is running.",{"title":862,"path":826,"stem":863,"description":864,"children":-1},"DBSync: Install and Configure","1.getting-started\u002F5.configuration\u002F3.dbsync","Use this guide to install and configure DBSync when FiveNet should pull characters, vehicles, and other data from your gameserver database without requiring direct database access from the FiveNet server itself.",1789448914799]