Code Monkey home page Code Monkey logo

docker-spaceengineers's Introduction

Space Engineers Dedicated Debian Docker Container

First of all thanks to 7thCore and mmmaxwwwell for their great prework making a linux dedicated server for Space Engineers real!

I took parts of their projects to create this one (see credits)

Why?

I wanted to have a more cleaner docker container with less dependencies (integrate sesrv-script parts instead of wget the whole script) and a little more configuration through composer files.

KeyFacts

Key :latest :winestaging
OS Debian 11 (Bullseye) Debian 11 (Bullseye)
Wine 8.0.0.0~bullseye-1 8.9~bullseye-1
Docker size ~1.73GB compressed ~1.77GB compressed
Build Time ~ 7-8 Minutes

How to use

First you have to use the Space Engineers Dedicated Server Tool to setup your world.

(detailed instructions follow when requested)

After you have saved your world upload it (the instance directory) to your docker host machine /appdata/space-engineers/instances/.

Using docker-compose with precompiled docker image (devidian/spaceengineers)

Create a docker-compose.yml (see example below) and execute docker-compose up -d

Do not forget to rename TestInstance with your instance name!

example composer - just copy and adjust

version: "3.8"

services:
  se-server:
    image: devidian/spaceengineers:latest
    container_name: se-ds-docker
    restart: unless-stopped
    volumes:
      # left side: your docker-host machine
      # right side: the paths in the image (!!do not change!!)
      - /appdata/space-engineers/plugins:/appdata/space-engineers/plugins
      - /appdata/space-engineers/instances:/appdata/space-engineers/instances
      - /appdata/space-engineers/SpaceEngineersDedicated:/appdata/space-engineers/SpaceEngineersDedicated
      - /appdata/space-engineers/steamcmd:/root/.steam
    ports:
      - target: 27016
        published: 27016
        protocol: udp
        mode: host
    environment:
      - WINEDEBUG=-all
      - INSTANCE_NAME=TestInstance
      - PUBLIC_IP=1.2.3.4
      # public ip required for healthcheck

Build the image yourself from source

Download this repository and run docker-compose up -d

Use the docker image as source for your own image

If you want to extend the image create a Dockerfile and use FROM devidian/spaceengineers:latest

FAQ

Can i use plugins?

Yes just copy plugins to /appdata/space-engineers/plugins and they will be added or removed by the entrypoint.sh script

Can i run mods?

Yes as they are saved in your world, the server will download them on the first start.

Can i contribute?

Sure, feel free to submit merge requests or issues if you have anything to improve this project. If you just have a question, use Github Discussions.

Credits

User repo / fork what (s)he did for this project
mmmaxwwwell https://github.com/mmmaxwwwell/space-engineers-dedicated-docker-linux downgrading for dotnet48
7thCore https://github.com/7thCore/sesrv-script installer bash script
Diego Lucas Jimenez - Improved Dockerfile
EthicalObligation https://github.com/EthicalObligation/docker-spaceengineers-healthcheck Healthcheck & Quicker startup
draconb - Hints for plugin support

Known issues

  • VRage Remote Client
    • I personally could not manage to connect with te remote client, if anyone gets a connection please tell me (and maybe how you fixed it)

docker-spaceengineers's People

Contributors

devidian avatar tanisdlj avatar ethicalobligation 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.