Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
*~
logs/*.log
37 changes: 37 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
FROM mono:latest

# MAINTAINER Kazuki Yasufuku <wilfrem@gmail.com> # Thanks dude!
MAINTAINER Cristoffer Fairweather <cfairweather@cfairweather.com>

RUN apt-get update && apt-get install wget unzip sudo && apt-get clean

#add kerman user
#create home folder
RUN useradd kerman && mkdir -p /home/kerman

WORKDIR /home/kerman
RUN wget https://d-mp.org/downloads/release/latest/DMPServer.zip && unzip DMPServer.zip && rm DMPServer.zip

#change file owner
RUN mkdir /home/kerman/DMPServer/Universe
#Copy config files to init proper permissions
COPY config/*.txt /home/kerman/DMPServer/
RUN chown -R kerman:kerman /home/kerman

WORKDIR /home/kerman/DMPServer

#run as kerman user
# USER kerman
# Run as root and then launch mono as kerman

#expose DMP port
EXPOSE 6702

VOLUME ["/home/kerman/DMPServer/Universe"]
COPY docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh

ENTRYPOINT ["/docker-entrypoint.sh"]
# CMD mono /home/kerman/DMPServer/DMPServer.exe


32 changes: 20 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,32 @@
DarkMultiPlayer-docker
======================
`Dockerfile`, `docker-compose.yml`, and configuration mapping for [Kerbal Space Program DarkMultiPlayer(DMP) MOD Server](http://d-mp.org).

dockerfile and bootstrap for Kerbal Space Program DarkMultiPlayer(DMP) MOD Server.
[The mode source is here](https://github.com/godarklight/DarkMultiPlayer)

[original source is here](https://github.com/godarklight/DarkMultiPlayer)
[The original Dockerfile was forked from wilfrem, here](https://github.com/wilfrem/DarkMultiPlayer-docker) to add some Docker paradigm updates and latest code.

build image
The new setup has been tested against Docker 1.9.0.

Build the image
-----------
Thanks to feats of modern software engineering, you no longer need to build this image yourself. You may pull and run it from docker hub!

move ./dockerfile folder and run this code
```sh
docker build -t "your tag" .
```
Simply skip to "Run Server"

if you want modify DMP server settings, you can modify files in ./dockerfile/DMPServerApp before building image.
./dockerfile/DMPServerApp will be included in building process.
If you're one of those fun users that likes to build things themselves you can use the `dev` docker-compose and run `docker-compose -f docker-compose-dev.yml build ksp-dmp` in this folder.
Then do `docker-compose -f docker-compose-dev.yml up -d ksp-dmp` to run the server instead.

run server
----

put ./buotstrap/DMPServerFiles into storage and run ./bootstrap.sh -t "your tag" -v "DMPServerFilesPath"

Run Server
----
`docker-compose up -d ksp-dmp`


Configuration
----
If you want modify DMP server settings, you can modify files in `config/` and then restart the server for the changes to take effect. Don't worry, your universe files are mapped out to `universe/`, so you won't lose your game changes.
```
docker-compose restart ksp-dmp
```
7 changes: 0 additions & 7 deletions bootstrap/DMPServerFiles/Universe/subspace.txt

This file was deleted.

1 change: 0 additions & 1 deletion bootstrap/DMPServerFiles/logs/dummy.txt

This file was deleted.

28 changes: 0 additions & 28 deletions bootstrap/bootstrap.sh

This file was deleted.

File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#MODCONTROLVERSION=1.0.3
#You can comment by starting a line with a #, these are ignored by the server.
#Commenting will NOT work unless the line STARTS with a '#'.
#You can also indent the file with tabs or spaces.
Expand Down Expand Up @@ -277,4 +278,66 @@ mk3FuselageLFO.100
mk3FuselageLFO.25
mk3FuselageLFO.50
mk3FuselageMONO
kerbalEVAfemale
airbrake1
airlinerCtrlSrf
airlinerMainWing
airlinerTailFin
pointyNoseConeA
pointyNoseConeB
airplaneTailB
fairingSize1
fairingSize2
fairingSize3
HeatShield1
HeatShield2
HeatShield3
wingShuttleDelta
elevonMk3
wingShuttleElevon1
wingShuttleElevon2
wingShuttleRudder
wingShuttleStrake
delta.small
mk2Cockpit.Inline
mk2Cockpit.Standard
mk3Cockpit.Shuttle
ksp.r.largeBatteryPack
solidBooster.sm
fuelTank.long
mk2.1m.Bicoupler
mk2.1m.AdapterLong
mk3FuselageLFO.100
mk3FuselageLFO.25
mk3FuselageLFO.50
mk3FuselageLF.100
mk3FuselageLF.25
mk3FuselageLF.50
xenonTankLarge
mk3Cockpit.Shuttle
FuelCell
FuelCellArray
ISRU
LargeTank
OrbitalScanner
RadialDrill
SmallTank
SurfaceScanner
SurveyScanner
sensorAtmosphere
Large.Crewed.Lab
science.module
radialDrogue
ServiceBay.125
ServiceBay.250
GearFixed
GearFree
GearLarge
GearMedium
basicFin
foldingRadLarge
foldingRadMed
foldingRadSmall
radPanelLg
radPanelSm

Empty file added config/DMPPlayerBans.txt
Empty file.
10 changes: 10 additions & 0 deletions docker-compose-dev.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
ksp-dmp:
build: .
container_name: ksp-dmp
ports:
- "6702:6702"
volumes:
- "./config/:/home/kerman/config"
- "./universe:/home/kerman/DMPServer/Universe"
- "./logs:/home/kerman/DMPServer/logs"
restart: on-failure:3
10 changes: 10 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
ksp-dmp:
image: cfairweather/ksp-dmp
container_name: ksp-dmp
ports:
- "6702:6702"
volumes:
- "./config/:/home/kerman/config"
- "./universe:/home/kerman/DMPServer/Universe"
- "./logs:/home/kerman/DMPServer/logs"
restart: on-failure:3
10 changes: 10 additions & 0 deletions docker-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/bin/bash

set -e

if [[ -d "/home/kerman/config" ]]; then
cp /home/kerman/config/* /home/kerman/DMPServer/
chown -R kerman:kerman /home/kerman/DMPServer/*
fi

/usr/bin/sudo -u kerman mono /home/kerman/DMPServer/DMPServer.exe
Binary file removed dockerfile/DMPServerApp/DMPServer.exe
Binary file not shown.
Binary file not shown.
Binary file removed dockerfile/DMPServerApp/ICSharpCode.SharpZipLib.dll
Binary file not shown.
Binary file removed dockerfile/DMPServerApp/MessageWriter2.dll
Binary file not shown.
1 change: 0 additions & 1 deletion dockerfile/DMPServerApp/git-version.txt

This file was deleted.

24 changes: 0 additions & 24 deletions dockerfile/Dockerfile

This file was deleted.