Closed CakeLancelot closed 1 month ago
@CakeLancelot Here you have a README for Docker Hub:
OpenFusion is a reverse-engineered server for FusionFall. It primarily targets versions beta-20100104
and beta-20111013
of the original game, with limited support for others.
For full documentation regarding setting up or contributing to the OpenFusion project, please visit our Github repo or website.
For running the application server using the Docker CLI, it is necessary to expose the following ports through option -p
:
23000
- For authenticating users (Required)23001
- For sharding (Required)8003
- For monitoring (Optional)And mount the following files through option -v
:
/usr/src/app/config.ini
for the server configuration file (Optional)/usr/src/app/database.db
for the application database (Optional)/usr/src/app/tdata
for game data (Required)Said this, you would use the following command for running the server application:
# Windows
> docker run -dp 23000:23000 \
-p 23001:23001 \
-p 8003:8003 \
-v path\to\config\file\in\host\machine\config.ini:/usr/src/app/config.ini \
-v path\to\database\file\in\host\machine\database.db:/usr/src/app/database.db \
-v path\to\tdata\folder\in\host\machine:/usr/src/app/tdata \
--name openfusion \
openfusion/openfusion
# MacOS / Linux
$ docker run -dp 23000:23000 \
-p 23001:23001 \
-p 8003:8003 \
-v path/to/config/file/in/host/machine/config.ini:/usr/src/app/config.ini \
-v path/to/database/file/in/host/machine/database.db:/usr/src/app/database.db \
-v path/to/tdata/folder/in/host/machine:/usr/src/app/tdata \
--name openfusion \
openfusion/openfusion
For running the application server using Docker Compose, you can use the Docker Compose file provided in our repository, but applying the following changes:
build
property from the openfusion
service.image
property from the openfusion
service to openfusion/openfusion
Once you have applied the below changes, you can run the following command to get the application server running using Docker Compose:
$ docker compose up -d
@CakeLancelot I just checked the results of the Push Docker Image action, and found the push of the tag 1.6 failed.
As a suggestion, you should erase the tag master from Docker Hub, optimize the Dockerfile and try to run the push of tag 1.6 again (unless you're planning on releasing a new version soon).
Juan fixed the issue with the builds being overwritten and I made the tweaks I wanted to the Dockerfile and docker-compose.yml, now I just need to put the finishing touches on the Dockerhub README and we can close this out.
This has been completed, closing.
There are still a few issues that I would like to address regarding Docker:
First of all the UX is somewhat confusing. For example: if you use Docker Desktop and search for our image, the resulting download will be missing all the port/file mounts that the docker-compose.yml normally sets up. One way to fix this would be to specify in our Dockerhub description/README to specifically use
docker compose
, then make sure our Dockerhub URL is specified in the yml like so:This will make it to where if you run
docker compose up
and have an internet connection, it will automatically grab an image instead of compiling from scratch.Another thing is that while the server starts up without issue, whenever I connect I get a sandbox related crash. The easiest solution I see is probably just to disable the sandbox for Docker builds, but I'm open to suggestions.
Lastly, whenever the ARM64 build was pushed, it seems to have overwritten the AMD64 build. This should be a simple configuration-related fix.