Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] ich777 - Gameserver Dockers

Featured Replies

On 1/9/2025 at 11:45 AM, ich777 said:

This is a request that you have to post in the ASA support forums since the dedicated server should create that file not the container.

 

Gotcha! A little sleuthing online shows that this file is notorious for not being generated. Maybe I can look into a way to manually force it or have a generic copy in the repository that downloads there? Food for thought but understand you aren't looking to address that.

 

On 1/9/2025 at 11:45 AM, ich777 said:

If you change 1 to something else than 7777 in the template you have to delete 2 and create a new port mapping with the exact same port number as 1 and choose UDP as protocol:

For me being new to Unraid, why do you have to delete the container variable for it to apply correctly? Setting the variable to something different doesn't automatically change the port number on the start-up line? If it doesn't then why have the variable and just make sure it's in the startup line? Just trying to understand and learn more!

 

On 1/9/2025 at 11:45 AM, ich777 said:

No, because modding is always up to the user and I only provide the container as is.

Does the dedicated server maybe support .txt files or some other kind of files which are accepted with a parameter in the GAME_PARAMS_EXTRA, if it supports it then yes, otherwise as above no.

I was thinking more of a variable that allows you just to enter the list of ModIDs and then it's job would be to add it at the end of the extra startup params when starting the server. That way mods have their own line that's easy to manage. Ultimately, not a big thing either way and I understand why you wouldn't want to support that.

 

On 1/9/2025 at 11:45 AM, ich777 said:

No because a cluster is most of the times, like in your case, a really complicated set of almost the same containers with minor differences between them in the template.

While it was difficult for me to set up, this is easy to do now that I know what is needed. If the container has a default volume mapping variable that allows for a user to enter a folder share location on a pool or array, the only other items needed are a -cluserid variable and a -ClusterDirOverride variable for the user to populate. See an example I have done for the container below:image.thumb.png.637bac8915ea79d292da4a7ed7c6ae05.pngFor any server that is going to be clustered together, this is fine and does not need to be different because they will be sharing the same file to keep track of items, dinos, and characters that are uploaded and traveling between servers. So if there was a boolean added for if the server is going to be part of a cluster or not, you could just have three variables be looked at if true. Those three being the -cluserid, the -ClusterDirOverride, and the volume mapping needed to send the directory file to a share the servers see. Lots of words, but if I need to explain better let me know. Ultimately though, if you don't want to, can't make you. Just saying it'd be easy.

 

On 1/9/2025 at 11:45 AM, ich777 said:

Sorry but this is something you also have to report on the ASA Forums since this is not a container issue, the container doesn't read the files, the dedicated server does that.

BTW, you know that you should always shut down the dedicated server, so to speak stop the container, then edit the files, save your changes and finally start the container again. Reason for that being is that some containers save the current configuration when you restart/stop them and basically overwriting your changes.

Yeah, this one was me using the wrong startup command....whoops! Working now....

 

On 1/9/2025 at 11:45 AM, ich777 said:

However the container is open source, you can always fork it on GitHub, make your modifications, publish the container and even bring it into the CA App with a dedicated support thread.

Initially, this intimidates me a bit, but maybe if I get some gumption I'll give it a try. Might be PMing you for help though!

 

On 1/9/2025 at 11:45 AM, ich777 said:

You could also do a write up on how to create a cluster with my container since I designed it pretty much as flexible as possible, at least I think that's the case, because you can create a cluster with it.

I will be working on this in the coming days. I had to do so much research to get this one going and I would love to save people some time. 

 

Appreciate the help and the insights!

  • Replies 12.6k
  • Views 2.3m
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Just thought I'd share my experience setting up a Valheim server with this docker app from @ich777(thank you!)   You don't need to worry about Steam authentication for Valheim, the default a

  • Dockers Available:   SteamCMD DedicatedServers: CounterStrike: Source CounterStrike 2 TeamFortress 2 ArmA3 - requested by @MrSage Deathmatch Classic

  • This will hopefully shed some light on the underside working bits of building a cluster of servers for ARK:SurvivalEvolved.   With the inspiration (read thievery) from @growlith I present th

Posted Images

  • Author
1 minute ago, Jwoff11 said:

Maybe I can look into a way to manually force it or have a generic copy in the repository that downloads there?

This could be done in the container but this introduces another issue, what if a value at some point is missing and prevents the server from starting...

 

1 minute ago, Jwoff11 said:

For me being new to Unraid, why do you have to delete the container variable for it to apply correctly? Setting the variable to something different doesn't automatically change the port number on the start-up line? If it doesn't then why have the variable and just make sure it's in the startup line? Just trying to understand and learn more!

Because containers are isolated, by changing the port in the GAME_PARAMS variable you basically change the port inside the container and since the port forwards port 7777 from inside the container to 7777 outside the container that wont work and no, I won't recommend just changing the port in the port variable on the host to 7778 because this will not work for most game servers because on initial connection the server will send the specified port to the client (which is defined in the GAME_PARAMS variable) and if they don't match they can't handshake and the connection will be never be established <- this is done for security reasons if someone tries to hijack the connection.

 

5 minutes ago, Jwoff11 said:

I was thinking more of a variable that allows you just to enter the list of ModIDs and then it's job would be to add it at the end of the extra startup params when starting the server. That way mods have their own line that's easy to manage. Ultimately, not a big thing either way and I understand why you wouldn't want to support that.

Sorry, but not happening in my container...

 

5 minutes ago, Jwoff11 said:

Those three being the -cluserid, the -ClusterDirOverride, and the volume mapping needed to send the directory file to a share the servers see. Lots of words, but if I need to explain better let me know. Ultimately though, if you don't want to, can't make you. Just saying it'd be easy.

This is nothing that I want to support, sorry, you could do that also a bit more easily so that everything is in the server directory but I even don't know what's the best way to tackle this since I think @Cyd did it differently.

 

7 minutes ago, Jwoff11 said:

Initially, this intimidates me a bit, but maybe if I get some gumption I'll give it a try. Might be PMing you for help though!

Not sure if I can help since I really don't know about clustering, I can guess how it works but that is not really interesting for most people that just want to play ASA and also keep in mind you need a pretty beefy server if you want to run a cluster with much resources so I think this is pretty niche... I also guess that's why @Cyd created a GitHub repo with pre made templates with all the parameters set to make easy to install for other users (they basically just needed to copy the templates to the USB Boot device and deploy the template.

 

10 minutes ago, Jwoff11 said:

I will be working on this in the coming days. I had to do so much research to get this one going and I would love to save people some time. 

If you also create a GitHub Repo for that or a post here in this thread I can also recommend it so that it's pinned on top of this thread, you can also create a guide in the Guides sub forums here and link it here which I can then recommend.

 

Or as said, you create the container yourself and publish it through the CA App but keep in mind this can get difficult pretty quickly because you need multiple templates in the CA App and if a user enters a variable wrong it might break the whole construct.

Does anyone here know up to date best practices for hosting a dedicated server for DST on unraid with mods?

Every time I add a mod or anything I end up spending far too much time just copy pasting mod folders everywhere in appdata\dontstarve\serverfiles and updating the dedicated server .lua file and it's just kinda complete shot in the dark. There is now a ugc_mods folder? With duplicate folder for the steamapps\workshop\content\322330 files in BOTH the master and the caves folder?

Idk if this doesn't make much sense that is kinda the point. If anyone here just knows the steps for doing this these days that would be awesome! Thank you!

I'm not sure if this is the best place to ask so please correct me if needed; 

 

I want to make my own docker container, the program I want to build around is a windows executable, coded in C++ with a simple cmd output for monitoring logs. I can figure my way around adjusting code to do what it needs but I haven't been able to find a good tutorial on building a docker container for this to run on a linux machine. Can you direct me to some resources I could look at? Also, sorry if that whole word salad doesn't make sense...

 

TLDR

C++ command line Windows built server -> Docker Container on UNRAID

 

The server is for a Xbox 360 stealth server

  • Author
2 hours ago, Cain532 said:

Can you direct me to some resources I could look at?

Not really, there is not much information out there.

 

I don't know if you want to adopt my environment because it got a bit complicated over the years... :D
Personally I build everything locally and then push it to DockerHub and GitHub.

 

I do that with Jenkins using the Cloud Bees Docker Build & Publish plugin utilizing a LXC container with Docker installed and the Docker service exposed via a port where I build the images in (to not mess up my Unraid container list).

 

However you can always also use GitHub Actions and basically build through that, in the end it's up to you and what fits your needs best.

 

You can look for example at some of my WINE based containers if it's a Windows executable and run it through that (all Docker containers who are running through WINE are marked as BETA in the CA App.

Thanks for the information! I was looking through your github and how you have things setup. This app will be windows based, so I'll scope out the WINE container. I couldn't find any that weren't steamcmd based though, is that an issue? I'm gonna keep hunting around all the same, thanks again!!!

  • Author
53 minutes ago, Cain532 said:

I couldn't find any that weren't steamcmd based though, is that an issue?

No issue at all, I think I have one for you:
https://github.com/ich777/docker-accompetizione

 

54 minutes ago, Cain532 said:

I'm gonna keep hunting around all the same, thanks again!!!

You could of course build on Unraid itself for testing but I wouldn't recommend that, you just need to clone the repository, go into the directory and then issue:

docker build .

or the more recent command:

docker buildx build .

 

Getting the below error when trying to spin up an Eco server
Not quite sure how to fix this..

[08:45:59] Failed to start the server. Exception was Exception: Exception
Message:Authentication to Strange Cloud failed. No authentication methods were available. Provide valid credentials ('-username' and '-password' or '-userToken' or '-steamTicket') or use '-offline' to start server in offline mode.
Source:EcoServer

System.Exception: Authentication to Strange Cloud failed. No authentication methods were available. Provide valid credentials ('-username' and '-password' or '-userToken' or '-steamTicket') or use '-offline' to start server in offline mode.
   at Eco.Server.StrangeCloudLogin.Initialize()
   at Eco.Server.PluginManager.InitializeAsync(StartupInfo startupInfo)
   at Eco.Server.Startup.StartAsync(StartupInfo startupInfo)
[08:45:59] Shutdown finished
[08:45:59] Errors report:
Failed to start the server. Exception was Exception: Exception
Message:Authentication to Strange Cloud failed. No authentication methods were available. Provide valid credentials ('-username' and '-password' or '-userToken' or '-steamTicket') or use '-offline' to start server in offline mode.
Source:EcoServer

System.Exception: Authentication to Strange Cloud failed. No authentication methods were available. Provide valid credentials ('-username' and '-password' or '-userToken' or '-steamTicket') or use '-offline' to start server in offline mode.
   at Eco.Server.StrangeCloudLogin.Initialize()
   at Eco.Server.PluginManager.InitializeAsync(StartupInfo startupInfo)
   at Eco.Server.Startup.StartAsync(StartupInfo startupInfo)

  • Author
11 minutes ago, Synopsis8044 said:

Getting the below error when trying to spin up an Eco server
Not quite sure how to fix this..

  1. Go to: https://play.eco/account
  2. Log In
  3. At "Server Authentication" generate a Token
  4. Copy the Token to your clipboard
  5. Go to the Docker Template and at GAME_PARAMS enter:
    -userToken=<YOURTOKEN>
    (You of course have to replace <YOURTOKEN> with the token that you copied to the clipboard in Step 4)
    grafik.png.7c040778f7e3a643c9388a44d3a1fbb4.png
  6. Click Apply

Your server should now start.

Good gravy baby, thank you! This was driving me nuts

9 hours ago, ich777 said:

Not really, there is not much information out there.

 

I don't know if you want to adopt my environment because it got a bit complicated over the years... :D
Personally I build everything locally and then push it to DockerHub and GitHub.

 

I do that with Jenkins using the Cloud Bees Docker Build & Publish plugin utilizing a LXC container with Docker installed and the Docker service exposed via a port where I build the images in (to not mess up my Unraid container list).

 

However you can always also use GitHub Actions and basically build through that, in the end it's up to you and what fits your needs best.

 

You can look for example at some of my WINE based containers if it's a Windows executable and run it through that (all Docker containers who are running through WINE are marked as BETA in the CA App.

 

5 hours ago, ich777 said:

No issue at all, I think I have one for you:
https://github.com/ich777/docker-accompetizione

 

You could of course build on Unraid itself for testing but I wouldn't recommend that, you just need to clone the repository, go into the directory and then issue:

docker build .

or the more recent command:

docker buildx build .

 

SUPER stoked for this! You're one of the most legit devs I've ever met!

Issue with Vintage story after the 1.20 update. Existing and new containers spit this out over and over after restarting them. The new server files are downloaded because I can see the tar archive.
 

---Starting...---
---Version Check---
---Vintage Story not found, downloading...---
---Can't download Vintage Story v1.20.1, putting server into sleep mode!---

 

 

Update: I manually downloaded and transferred the 1.20 files...all good. 
 

Edited by RS7588

  • Author
3 hours ago, RS7588 said:

Issue with Vintage story after the 1.20 update. Existing and new containers spit this out over and over after restarting them. The new server files are downloaded because I can see the tar archive.

Thanks for the report.

I will look into that!

 

EDIT: That's strange, I can't reproduce this over here... Of course this is a new installation but it seems everything is working:

grafik.thumb.png.8a8365716a9e572dd0a6d1d5ce08ef7d.png

 

However I will push a update to the container to maybe fix that in the future.

On 1/18/2025 at 10:28 PM, ich777 said:

Thanks for the report.

I will look into that!

 

EDIT: That's strange, I can't reproduce this over here... Of course this is a new installation but it seems everything is working:

grafik.thumb.png.8a8365716a9e572dd0a6d1d5ce08ef7d.png

 

However I will push a update to the container to maybe fix that in the future.

Any chance we can get an option to turn off auto updating on container start please? It's very important because mod development lags behind game build releases and some of us would rather have working servers than the most current update. If at all possible the ability to pick specific builds would be even better.

  • Author
1 hour ago, Odur said:

Any chance we can get an option to turn off auto updating on container start please?

Please update the container itself and add the Variable:

Key: DISABLE_UPDATES

Value: true

 

This will disable updates entirely and you can always download and extract the version you want or set this value to something else than true and let the container update it to the latest version and possibly set the value after it to true again.

 

1 hour ago, Odur said:

If at all possible the ability to pick specific builds would be even better.

Sure but that would mean a complete rewrite from the container and would possible break the existing container.

Valheim container, version 7 & Tailscale

 

I'm trying to set up a docker server of Valheim over tailscale so my friends can join and I don't have to open any ports but I've hit a wall. I've set the container up as its own device on tailscale, gotten the IP, but can't seem to connect over steam. I'm obviously doing something wrong here.  The only instructions I could find involved opening ports so any help would be greatly appreciated!

 

Should my container be in bridge mode or Br0? 

 

FYI: My tailscale is the plugin version, not docker.

 

12 hours ago, ich777 said:

Please update the container itself and add the Variable:

Key: DISABLE_UPDATES

Value: true

 

This will disable updates entirely and you can always download and extract the version you want or set this value to something else than true and let the container update it to the latest version and possibly set the value after it to true again.

 

Sure but that would mean a complete rewrite from the container and would possible break the existing container.

I personally wouldn't mind this, if its something you'd be willing to do. It's been a big thing that I've wanted for a long time not sure about others.

Thank you for the other info 😃

Edited by Odur

  • Author
6 hours ago, Vampiresoup said:

I've set the container up as its own device on tailscale, gotten the IP, but can't seem to connect over steam.

What do you mean exactly with that? I don't use the Tailscale plugin so I really can't help much with that since the Valheim container must be reachable with all ports (default: 2456-2458).

You should be still be able to connect with IP and Query port, where the Query port is always the second one, so to speak in the default configuration: 2457

 

Please also make sure that you set public server to 0 in the Docker template:

grafik.png.b13db679490e2f477519cda6bf620ef0.png

 

If the plugin works similar like the Unraid Docker Integration for Unraid then it should only be a matter connecting with <TAILSCALEIP>:2457 from another Machine (probably some friends of yours) with the Tailscale App installed and of course sharing the Machine with them.

 

6 hours ago, Vampiresoup said:

Should my container be in bridge mode or Br0? 

That doesn't matter much, both will work fine.

  • Author
14 minutes ago, Odur said:

I personally wouldn't mind this, if its something you'd be willing to do. It's been a big thing that I've wanted for a long time not sure about others.

I'm not sure if I can do this currently because I have a lot on my table and I try to keep the containers up and running if something breaks... :)

Essentially, I want to use Tailscale with Funnel to avoid opening any ports on my router while allowing my friends to connect to the server through Steam without needing Tailscale installed.

 

I’ve installed your container and enabled Tailscale within it, but I don’t think I’ve configured the server correctly to work with Funnel. I’ve followed several tutorials and even tried connecting with Funnel disabled, but nothing seems to work.

 

In the Steam UI, I’ve tried connecting using the Tailscale IP and port (without Funnel), as well as the Tailscale web address and port with Funnel enabled, but neither approach has been successful.

 

I’m running Unraid 7 with the tailscale plugin installed if that means anything.

 

On 1/21/2025 at 4:47 PM, ich777 said:

What do you mean exactly with that? I don't use the Tailscale plugin so I really can't help much with that since the Valheim container must be reachable with all ports (default: 2456-2458).

You should be still be able to connect with IP and Query port, where the Query port is always the second one, so to speak in the default configuration: 2457

 

Please also make sure that you set public server to 0 in the Docker template:

grafik.png.b13db679490e2f477519cda6bf620ef0.png

 

If the plugin works similar like the Unraid Docker Integration for Unraid then it should only be a matter connecting with <TAILSCALEIP>:2457 from another Machine (probably some friends of yours) with the Tailscale App installed and of course sharing the Machine with them.

 

That doesn't matter much, both will work fine.

  • Author
6 minutes ago, Vampiresoup said:

Tailscale with Funnel

That won't work because Funnel is only meant for web traffic and not game servers, most game servers aren't real http/https traffic.

13 minutes ago, Vampiresoup said:

Essentially, I want to use Tailscale with Funnel to avoid opening any ports on my router while allowing my friends to connect to the server through Steam without needing Tailscale installed.

 

I’ve installed your container and enabled Tailscale within it, but I don’t think I’ve configured the server correctly to work with Funnel. I’ve followed several tutorials and even tried connecting with Funnel disabled, but nothing seems to work.

 

In the Steam UI, I’ve tried connecting using the Tailscale IP and port (without Funnel), as well as the Tailscale web address and port with Funnel enabled, but neither approach has been successful.

 

I’m running Unraid 7 with the tailscale plugin installed if that means anything.

 

 

Have you considered reverse proxy?

1 hour ago, Spectral Force said:

Have you considered reverse proxy?

I've heard of it but I've never used it. I've only used Tailscale. I'll look into that as an option though!

  • Author
12 hours ago, Spectral Force said:

Have you considered reverse proxy?

Reverse proxy won't work for that.

 

11 hours ago, Vampiresoup said:

I'll look into that as an option though!

Please don't invest too much time since in general it is possible but will get complicated quick and is really complicated <- no support from my side if you are doing it with a reverse proxy and streaming ports.

 

The best option for you would be to put the container on your Tailnet and share out the machine with your friends.

They just have to create an account with one of their already existing accounts from the big players, install Tailscale, after that they can connect with the Tailscale IP from the Valheim Machine to the dedicated server.

 

It's like Hamachi but easier in my opinion.

16 hours ago, ich777 said:

Reverse proxy won't work for that.

 

Please don't invest too much time since in general it is possible but will get complicated quick and is really complicated <- no support from my side if you are doing it with a reverse proxy and streaming ports.

 

The best option for you would be to put the container on your Tailnet and share out the machine with your friends.

They just have to create an account with one of their already existing accounts from the big players, install Tailscale, after that they can connect with the Tailscale IP from the Valheim Machine to the dedicated server.

 

It's like Hamachi but easier in my opinion.

 

Yeah, I might have to abandon this one. One of my friends plays on xbox and can't use tailscale. Honestly, I think I'm too green for something like this anyhow. I was hoping I could throw it up and connect pretty easily but it sounds like I have a lot to learn. 

 

Thanks for all your help regardless!

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.