mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-08-05 18:24:12 +00:00
fix: improve our docker config (#1373)
* greatly simplify docker * back to gcc since I can't the libs to load properly * fix typo add set -e to entrypoint better copy of entrypoint.sh and use proper entrypoint * use debian instead of gcc for runtime comment and organize it a bit drop gcc to 12 since we are using debian 12 as well * explicitly include mariadb libs * Make the server not crash in the case we are using only env-vars make the dockerfile have configs in the expected location incase of bypassing entrypoint.sh * remove unneede var from example, since it's in the container now * coments to dockerfile * Revert master server changes * Resolve conflicting port options between chat, master, and world move chat_server_port to shared since it's used by world and chat * Don't error if file does not exists when updating a config option move update before and use bin dir var
This commit is contained in:
37
README.md
37
README.md
@@ -37,6 +37,7 @@ If you would like a setup for a single player server only on a Windows machine,
|
||||
* [Verify your setup](#verify-your-setup)
|
||||
* [Running the server](#running-the-server)
|
||||
* [User Guide](#user-guide)
|
||||
* [Docker](#docker)
|
||||
|
||||
## Clone the repository
|
||||
If you are on Windows, you will need to download and install git from [here](https://git-scm.com/download/win)
|
||||
@@ -347,6 +348,42 @@ certutil -hashfile <file> SHA1
|
||||
Known good *SHA1* checksum of the Darkflame Universe client:
|
||||
- `91498e09b83ce69f46baf9e521d48f23fe502985` (packed client, zip compressed)
|
||||
|
||||
# Docker
|
||||
|
||||
## Standalone
|
||||
|
||||
For standalone deployment, you can use the image provided via Github's Container Repository:
|
||||
`ghcr.io/darkflameuniverse/darkflameserver`
|
||||
|
||||
This assumes that you have a database deployed to your host or in another docker container.
|
||||
|
||||
A basic deployment of this contianer would look like:
|
||||
```sh
|
||||
# example docker contianer deployment
|
||||
docker run -it \
|
||||
-v /path/to/configs/:/app/configs \
|
||||
-v /path/to/logs/:/app/logs \
|
||||
-v /path/to/dumps/:/app/dumps \
|
||||
-v /path/to/res:/app/res:ro \
|
||||
-v /path/to/resServer:/app/resServer \
|
||||
-e DUMP_FOLDER=/app/dumps \
|
||||
-p 1001:1001/udp \
|
||||
-p 2005:2005/udp \
|
||||
-p 3000-3300:3000-3300/udp \
|
||||
ghcr.io/darkflameuniverse/darkflameserver:latest
|
||||
```
|
||||
You will need to replace the `/path/to/`'s to reflect the paths on your host.
|
||||
|
||||
Any config option in the `.ini`'s can be overridden with environmental variables: Ex: `log_to_console=1` from `shared_config.ini` would be overidden like `-e LOG_TO_CONSOLE=0`
|
||||
|
||||
## Compose
|
||||
|
||||
See the [compose](docker-compose.yml) file in the root of the repo.
|
||||
|
||||
This compose file is for a full deployment: MariaDB, DarkflameServer, and Nexus Dashboard.
|
||||
|
||||
All of the environmental options are listed in the compose file so the can be pass through, or you can edit the compose file to suit your specific needs
|
||||
|
||||
# Development Documentation
|
||||
This is a Work in Progress, but below are some quick links to documentaion for systems and structs in the server
|
||||
[Networked message structs](https://lcdruniverse.org/lu_packets/lu_packets/index.html)
|
||||
|
Reference in New Issue
Block a user