[Support] ich777 - Gameserver Dockers


Recommended Posts

1 hour ago, whoDat said:

Currently, this is specifically for ich777/steamcmd:7dtd, but also curious in general.

Not really easy since Steam also now implemented a authentification at their API...

What you can do is that you restart the container once a day so that it would automatically pick up the update.

 

You can do this by creating a user script and filling it with something like that:

docker restart 7DtD

(7DtD is actually the name from the container in this case)

Link to comment
8 hours ago, GrehgyHils said:

Is there any support for Rcon for Pavlov VR? Perhaps I'm unsure where to look for documentation for a specific game

Yes, it's not different from a dedicated server on bare metal, just create a port mapping in the template like this:

grafik.png.61e2c01b8f86d414bc2d79f1533c6c4a.png

 

Of course you have to edit the file "RconSettings.txt" that is located in your pavlovvr folder in your appdata directory in the subfolder "Pavlov/Saved/Config/". After you've edited the file, restart the container and RCON should be available.

 

Hope that helps.

Link to comment

@ich777

 

That helps a ton, I should be able to easily follow this and recreate it, so a big thank you!

 

Let me ask you this, how would one figure this out on their own, without resorting to asking on this thread? Is there some documentation that I may have missed?

 

I ask because I've been resorting to exploring the container itself to try to see which ports are expected, what is running, etc. My whole exploration is based quite a bit on luck and exploration ha

 

Thanks again,

Greg

Link to comment
1 hour ago, GrehgyHils said:

Let me ask you this, how would one figure this out on their own, without resorting to asking on this thread? Is there some documentation that I may have missed?

All containers that I create are not different from a dedicated server that runs on bare metal with the advantage that my start script downloads/updates the containers on each start/restart and also downloads pre configured configuration files so the container will or at least warn you when something is missing, better speaking click on the download button in the CA App -> click on Apply in the template -> wait for the download to finish -> the dedicated server is up and running.

 

I try to make things as easy as possible for users.

 

Also if you want to change something simply search for "GAMENAME linux dedicated server" on Google or your prefered search engine, it's really not different from a dedicated serve that euns on bare metal.

 

Hope that makes sense.

 

1 hour ago, GrehgyHils said:

I ask because I've been resorting to exploring the container itself to try to see which ports are expected, what is running, etc. My whole exploration is based quite a bit on luck and exploration ha

The ports are simply forwarded as described in my previous post.

 

Which ports are used is depending on the dedicated server itself, I mostly use the default ports that are also in the documentation for the dedicated server itself.

 

Documentation is actually the wrong word, you actually have to search on Google which ports are the default ones or on the various support foruns for the dedicated server or go through the config files, only a few have a proper documentation.

 

If you got any further question feel free to ask again.

Link to comment

Okay that makes sense, I was able to get rcon running as described. Thanks ich777

 

That makes sense, it didn't dawn on me that there's probably only one dedicated linux server for the game and I could just safely assume you're using that.

Appreciate your explanation and help!

  • Like 1
Link to comment
28 minutes ago, GrehgyHils said:

there's probably only one dedicated linux server for the game and I could just safely assume you're using that.

All my containers use the official dedicated server from Steam or the publisher itself and downloaded on the start of the container. ;)

  • Thanks 1
Link to comment

 

@ich777 One more follow up question. I have been playing with the Pavlov VR server this afternoon and it has been an absolute blast. I've been downloading custom maps etc...

I just noticed alerts from my Unraid server saying:

> Warning: Docker high image disk utilization (at...

After running `$ docker system df -v`, I've noticed that this container has been writing a lot of data to the `docker.img`.

```

CONTAINER ID   IMAGE                                COMMAND                  LOCAL VOLUMES   SIZE      CREATED        STATUS                        NAMES
0fae144b0f31   ich777/steamcmd:pavlovvr             "/opt/scripts/start.…"   0               5.33GB    10 hours ago   Exited (143) 10 minutes ago   PavlovVR

```

Are there any specific volumes would should be aware of to create when playing with this image? IE, so that the large amount of disk space is say written onto the cache directory or the array itself, rather than in the `docker.img`?

 

Link to comment
1 hour ago, GrehgyHils said:

Are there any specific volumes would should be aware of to create when playing with this image?

The game should not write into the docker image itself since the volume mappings in the container should cover that, have you changed something in the template itself?

  • Thanks 1
Link to comment

Okay, understood.

 

I don't believe I've modified anything in the template that would cause this issue, but I will attach a full screenshot for completion.

 

The only modifications that I made was to the ports.

Perhaps I've mis-configured something on my entire Unraid server itself and this doesn't have to do with the Pavlov template specifically?

Screenshot 2021-09-21 at 07-02-22 tower UpdateContainer.png

Link to comment
1 hour ago, GrehgyHils said:

I don't believe I've modified anything in the template that would cause this issue, but I will attach a full screenshot for completion.

Please open up a console from the container and copy and past this:

du -sh /* 2>/dev/null

and post the output here please.

  • Thanks 1
Link to comment

Sure thing, here's the output:

 

6.1M    /bin
0       /boot
0       /dev
1.9M    /etc
0       /home
13M     /lib
6.2M    /lib32
4.0K    /lib64
0       /media
0       /mnt
8.0K    /opt
0       /proc
32K     /root
4.0K    /run
4.2M    /sbin
2.5G    /serverdata
0       /srv
0       /sys
4.9G    /tmp
174M    /usr
26M     /var

 

So are you thinking that the data in the Pavlov VR container's `/tmp`, somehow got written to my unraid's `docker.img` file, on the host OS?

Edited by GrehgyHils
formatting output to be easier to read
Link to comment
20 minutes ago, GrehgyHils said:

the data in the Pavlov VR container's `/tmp`, somehow got written to my unraid's `docker.img` file, on the host OS?

If you don't map a path to the host, it's inside the docker.img.

I don't see a container side mapping for /tmp in the screenshot of the config you posted.

  • Thanks 1
Link to comment

Oh woops, you're absolutely right. I totally overlooked that.

So I should be able to stop the Pavlov container, mount some directory from the host OS to the Pavlov container, say a newly made share. Then when I start the Pavlov container, it should notice that its `/tmp` directory is empty and redownload everything, I believe?

My only other outstanding question is, if the above works and "stops the bleeding", is there any easy way to reduce the storage that was accidentally written to my `docker.img` file?

 

Thanks for your help on this, you both have made exploring self hosting a game server a really rewarding experience.

Link to comment
36 minutes ago, GrehgyHils said:

So are you thinking that the data in the Pavlov VR container's `/tmp`, somehow got written to my unraid's `docker.img` file, on the host OS?

Really strange that this container is writing to the /tmp directory I also don't understand what this container should write to /tmp

Have to look into the dedicated server documentation what is causing that, a dedicated server should always write in the work directory and not in /tmp.

 

8 minutes ago, GrehgyHils said:

My only other outstanding question is, if the above works and "stops the bleeding"

Please don't map anything for now to /tmp inside the container, this needs further investigation.

 

Open up the container console again and please send me the output from (maybe in a text document -> simply drag it here in the text box):

ls -la /tmp/* /tmp/.*

 

 

11 minutes ago, GrehgyHils said:

is there any easy way to reduce the storage that was accidentally written to my `docker.img` file?

Yes, if you map it in the template but don't do that yet.

Link to comment

Noted, I'll hold off on mapping anything.

I'll attach the output of that command as requested.

So, I may have some information that will help here. I did not experience any issues when I was running the Pavlov VR server using the default maps. Now this is just based on my observations, but the problem seemed to start to arrive when I started experimenting with community maps, hosted on the Steam Workshop.

 

I was talking to the community a bit, as I was running into an issue, and they informed me that the directory `/tmp/workshop` is where community maps will be downloaded to. I imagine this is what we're observing here.


EDIT: Just noticed you replied while I was writing my initial reply. Looks like we're on the same page. I downloaded the maps two different ways.

1. Using rcon to trigger a MapSwitch, specifically using a command like `SwitchMap UGC[workshop map id] [game mode]`

2. Configuring the `/serverdata/serverfiles/Pavlov/Saved/Config/LinuxServer/Game.ini` to contain workshop map IDs

 

I believe both 1 and 2 above will trigger the application to go fetch the map data and store it in `/tmp/workshop/

 

output.txt

Edited by GrehgyHils
replied to reply i missed
  • Thanks 1
Link to comment
12 minutes ago, GrehgyHils said:

I believe both 1 and 2 above will trigger the application to go fetch the map data and store it in `/tmp/workshop/

Then simply create another Path in the template like:

grafik.png.70c04e045ad0d03e0161971b4292465c.png

 

Of course you can use another path on the Host if you prefer it to have it on an UnassignedDevices Disk or somewhere else. This will create basically a new folder with the maps in it, but keep in mind the maps that you've already downloaded will be wiped after doing that for the first time.

 

This should fix the issue that the container is writing to the docker.img

Link to comment
2 hours ago, ich777 said:

Then simply create another Path in the template like:

grafik.png.70c04e045ad0d03e0161971b4292465c.png

 

Of course you can use another path on the Host if you prefer it to have it on an UnassignedDevices Disk or somewhere else. This will create basically a new folder with the maps in it, but keep in mind the maps that you've already downloaded will be wiped after doing that for the first time.

 

This should fix the issue that the container is writing to the docker.img


I've verified that making this modification dropped my docker.img from 92% down to 66%. I have not attempted to connect to the server and will not be able to till after work or tomorrow but can report back.

Thank you again ich777 and JonathanM. I would not have figured this out without the two of you :)

  • Like 1
Link to comment

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...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.