Giter Site home page Giter Site logo

torch-docker's Introduction

Torch for Docker (experimental)

Building on the work of radu706 of the Torch Discord getting the CLI version of Torch running under Wine, this Docker image brings the GUI version of Torch to the web and VNC so you can have a truly headless server.

In order to keep the image size down and simplify updates, this image contains only the Torch server and will download the Space Engineers dedicated server on first run. The SteamCMD update progress does not appear in the console but it is working.

If copying an existing world, make sure to change the path of <LoadWorld> in SpaceEngineers-Dedicated.cfg to Z:\torch-server\Instance\Saves\. If you want to create a world within the Torch GUI, change <Autostart> to false in Torch.cfg, remove the -autostart flag in supervisord.conf and restart.

Warning: This image is experimental. Performance appears to be optimal with 4 vCPUs made available, 8 actually causes performance to drop. Wine is weird.

Ports

  • TCP 5900: VNC (x11vnc)
  • TCP 6080: Web UI (noVNC)
  • UDP 27016: Game server

Known Bugs

  • Torch themes don't work
  • Keen's remote API doesn't work
  • Title bars don't render unless virtual desktop setting is set after first boot, run winetricks vd=800x600 to fix it

Build Notes

  • Space Engineers is theoretically okay with .NET Framework 4.0 and Visual C++ 2017 redistributables since that's what it ships with
  • Torch is built against (according to packages.config) .NET Framework 4.6.1 and Visual C++ 2013
  • However, booting with .NET Framework 4.6.1 on Wine results in fatal errors because of missing calls in a DLL, so you really need .NET Framework 4.6.2
  • Booting with .NET Framework 4.7 or higher results in rendering issues
  • Booting with Wine 5 RC1 under Debian Unstable results in Torch being unable to attach to the SE server
  • Torch GUI requires Arial font to be installed or it'll fail fatally
  • Window management must be disabled for Wine to render a titlebar and a virtual desktop must then be used to stop the cursor disappearing on window focus
  • Winetricks setting verbs must be called individually or they only appear to work
  • Running as root is a necessary evil unless a decent solution can be found for setting ownership of Docker volumes
  • Using bash -c is necessary to force the Torch CLI to appear under X11 instead of passing to the command line
  • Running Torch CLI from the command line will only pass all output if run by a user terminal, not Docker or supervisord
  • Setting supervisord's PID file to /dev/null will replace it with a regular file
  • Wine's STDERR is a firehose of insignificant warning messages

torch-docker's People

Contributors

adamharley avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.