Skip to content

TrueOsiris/docker-vrising

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Iroh

Dockerized V Rising dedicated server in an Ubuntu 22.04 container with Wine.

Docker Pulls Docker Stars Docker Image Size Github stars Github forks Github open issues Github closed issues Github last-commit

Updates

Branch selection

Merged pull request of DzymFardreamer that allows to add a version.
I've rebuilt the image to trueosiris/vrising:latest & trueosiris/vrising:3.0 and I've not yet tested it.
The previous one, that was perfectly working a few moments ago is still fetchable using trueosiris/vrising:2.1

1.1 and latest image

  • Just tested the latest image for V-Rising 1.1 & all works fine.
  • Log will be spammed with these messages. Feel free to give me a solution here.
    01b4:fixme:winsock:server_ioctl_sock Unsupported ioctl 4004747b (device=4004 access=1 func=d1e method=3)
    vrising-1 | 01b4:fixme:winsock:WSAIoctl unsupported WS_IOCTL cmd (SIO_IDEAL_SEND_BACKLOG_QUERY)
  • There is no way to continue a game from 1.0. I just checked with the discord community.
  • Still an issue: when the server is passworded, joining via Steam seems not possible. Use the ingame server list to join.

image 2024-05-16 (trueosiris/vrising:2.1 or latest)

  • Merged with pull65 from Killerherts.
    Logs older than 30 days are cleaned up on server start.
  • Merged with pull52 from Diyagi.
    Previous container version can still be grabbed via trueosiris/vrising:2.0
    Main fixes are: clean shutdown & complete log to container log. Kudos!
  • Added date to the logfile name, so per server launch, a logfile will be created. For now, they will not be automatically cleaned up.
  • If you're experiencing this issue with "[476:488:20240511,134828.926:ERROR http_transport_win.cc:388] HTTP status 403" in the log, pull trueosiris/vrising:display which uses xvfb.
  • If you're experiencing this issue with "wine: Assertion failed at address 00007F79E2C9EA7C (thread 0094)" in the log, u might need the latest wine from winehq, therefore grab trueosiris/vrising:winehq

Environment variables

Variable Key Description
TZ Europe/Brussels timezone for ntpdate
SERVERNAME published servername mandatory setting that overrules the ServerHostSettings.json entry
WORLDNAME optional worldname default = world1. No real need to alter this. saves will be in a subdir WORLDNAME
GAMEPORT optional game udp port to overrule Port in ServerHostSettings.json config
QUERYPORT optional query port to overrule QueryPort in ServerHostSettings.json config
LOGDAYS optional lifetime of logfiles overrule default of 30 days
BRANCH optional server version Allows to run the server version legacy-1.0.x-pc

Ports

Exposed Container port Type Default
9876 UDP ✔️
9877 UDP ✔️

Volumes

Volume Container path Description
steam install path /mnt/vrising/server path to hold the dedicated server files
world /mnt/vrising/persistentdata path that holds the world files

Docker cli

docker run -d --name='vrising' \
--net='bridge' \
--restart=unless-stopped \
-e TZ="Europe/Paris" \
-e SERVERNAME="trueosiris-V" \
-v '/path/on/host/server':'/mnt/vrising/server':'rw' \
-v '/path/on/host/persistentdata':'/mnt/vrising/persistentdata':'rw' \
-p 9876:9876/udp \
-p 9877:9877/udp \
'trueosiris/vrising'

docker-compose.yml

services:
  vrising:
    image: trueosiris/vrising
    environment:
      - TZ=Europe/Paris
      - SERVERNAME=vrising-TrueOsiris
    volumes:
      - type: bind
        source: /your/host/vrising/server
        target: /mnt/vrising/server
        bind:
          create_host_path: true
      - type: bind
        source: /your/host/vrising/persistentdata
        target: /mnt/vrising/persistentdata
        bind:
          create_host_path: true
    ports:
      - '9876:9876/udp'
      - '9877:9877/udp'
    restart: unless-stopped
    network_mode: bridge

Links

RCON - Optional

To enable RCON edit ServerHostSettings.json and paste following lines after QueryPort. To communicate using RCON protocal use the RCON CLI by gorcon.

"Rcon": {
  "Enabled": true,
  "Password": "docker",
  "Port": 25575
},

Remarks

  • Server config files are in /path/on/host/persistentdata/Settings. Files in /path/on/host/server/ are overwritten on Steam update.
    Priority of settings is

    a. container variables

    b. files in /persistentdata

    c. files in /server. (and these are reset to defaults each new patch)

    If there are no files in /path/on/host/persistentdata/Settings on container start, the default files will be copied there from the /server directory.
    Edit ServerHostSettings.json if you want to change the ports, descriptions etc.

  • Description can be changed in /path/on/host/persistentdata/Settings/ServerHostSettings.json. The server will have to be restarted after changes.

  • If you use different internal & external ports, you can only use direct connect. For example -p 12345:6789/udp container port 6789 as defined in ServerHostSettings.json, and exposed as 12345 will make your server invisible.

  • Make sure "ListOnSteam": true, and "ListOnEOS": true are set in the ServerHostSettings.json in \persistentdata, so the server is visible in the serverlist.

  • When the server is passworded, joining via Steam seems not possible. Use the ingame server list to join.

  • Launching the server can take up to 10 minutes, even on a fast system, certainly with an existing save.

  • If you want to see the server in the server list and want to use 27015-27016/UDP, you'll need to change the ports in the ServerHostSettings.json file to 27015 and 27016. Then expose these ports (below). Of course, forward these udp ports on your firewall from incoming wan to the ports on the internal ip of your dockerhost.

    • Start the container & let the server install.
    • Stop the container.
    • Alter the ports in /path/on/host/persistentdata/Settings/ServerHostSettings.json to
       "Port": 27015,
       "QueryPort": 27016,
      
    • On your firewall, port forward incoming wan udp ports 27015 and 27016 to the same udp ports on your dockerhost ip.
    • Restart the container with these ports:
       -p 27015:27015/udp
       -p 27016:27016/udp
      
  • If you want to continue from your local game, stop the container, overwrite the persistentdata contents with your local data, and relaunch the server.

Docker log

Since 1.1 the log will be spamming these messages, but no need to worry:
vrising-1 | 01b4:fixme:winsock:server_ioctl_sock Unsupported ioctl 4004747b (device=4004 access=1 func=d1e method=3)
vrising-1 | 01b4:fixme:winsock:WSAIoctl unsupported WS_IOCTL cmd (SIO_IDEAL_SEND_BACKLOG_QUERY)

Here is a working 1.1.hotfix3 log as reference.

Credits

  • All credits go to the awesome designers of V-Rising!

About

Container for V-Rising dedicated server

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published