Skip to content

Dockerize Nebula#31

Merged
Melledy merged 3 commits into
Melledy:mainfrom
fishiatee:docker
Apr 23, 2026
Merged

Dockerize Nebula#31
Melledy merged 3 commits into
Melledy:mainfrom
fishiatee:docker

Conversation

@fishiatee

Copy link
Copy Markdown
Collaborator

Docker is convenient, idiot-proof, and IMHO will make development a lot more pleasant.

This PR introduces a Dockerfile that is used to build a nebula docker image with latest resources included. An additional docker compose manifest is also introduced to allow for quick set up.

  • Added two new environment variables: NEBULA_MONGODB_HOST and NEBULA_MONGODB_PORT. If set, these two will override the connection string set in config.json. This is intended to be used with docker only.
  • To facilitate dockerization, a dedicated data directory is now used to store config.json as well as database.mv.

Get up and running:

  • Make sure you have docker installed (on windows, WSL2 + Docker Desktop is the easiest way to get started)
  • Clone the repository
  • docker compose up -d

That's it. Latest resources are built into the images so there will be no worries of outdated resources. A proper mongodb database is also used with data persistence handled by docker volumes.

@fishiatee

Copy link
Copy Markdown
Collaborator Author

It would be nice for official images to be published on a registry so that they won't have to be built every time too.

This would also allow for proper versioning :D

Comment thread src/main/java/emu/nebula/Config.java Outdated
Added `NEBULA_PUBLIC_HOST` and `NEBULA_PUBLIC_PORT` environment variables. Will override config values.
Add `NEBULA_PUBLIC_PORT` environment variable for serverlist.
@Melledy Melledy merged commit 8f07ae0 into Melledy:main Apr 23, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants