weber-gregoire / minecraft-overviewer

Docker Images to run minecraft overviewer on your minecraft server

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Builder Travis Map builder: Builder Docker Pulls Map viewer: Viewer Docker Pulls

Minecraft Overviewer Docker Images

Docker Images to Run Minecraft Overviewer. Overviewer is a render that produces a Leaflet render of a Minecraft world.

Tags and versions

Map builder

Tags for map builder from 1 to 7 is compatible with minecraft 1.12 When support for 1.13 was added, image versionning was updated to include overviewer version number as follows

gregoireweber/minecraft-map-builder:{OVERVIEWER_RELEASE_VERSION}
gregoireweber/minecraft-map-builder:{OVERVIEWER_RELEASE_VERSION}-{TRAVIS_BUILD_NUMBER}

Map viewer

Map viewver is a simple http server, no specific version is necessary as long as the volume is shared with the builder container

How it works

There are two different images to use :

  • minecraft-map-builder
  • minecraft-map-viewer

The minecraft-map-builder has Minecraft Overviewer installed on it, and read your minecraft server folder to generate all the file to create your online map. The minecraft-map-viewer is a simple python web server that serves the content generated by the map buider. That way, you can scale your http server without having to handle multiple builders.

To use it, check the docker-compose-example.yml file in the repo, and create folders like this :

<ROOT_FOLDER>
 |
 |- docker-compose-example.yml
 |
 |- server-data/
 |   \_ folder that contains all the files generated by your minecraft server (map, config and players data)
 |
 \- render-data/
     \_ folder that contains the file of the map generated by minecraft-map-builder

Simply run docker-compose -f docker-compose-example.yml up -d the minecraft server will start, and the builder will generate the map when it will be created by the server (you need to log on the minecraft server at least once since the map is generated when you play). From the a cron job s running in the minecraft-map-builder, updating the map every hour, and the POIs every 5 minutes. Since there is two different container for overviewer, your map will always be available, event when the builder is generating the map.

Usefull things to know

In game, you can place a sign, by default it will not be rendered on the map. But, if you type -- RENDER -- on the last line of the Sign, it will be flagged and the text of the first to third line will be shown on the map.

Configuration

Two environment variables are available to configure the cronjob that generate map data. You can either configure it via the -e option of the docker run command, or by specifiying the value in a docker-compose file (see docker-compose-example.yml).

Map Generation

You can use the environment vairable MAP_GENERATION_FREQUENCY to configure the frenquency at which the map generation is triggered by the cron job. You must use a valid cron expression, you can use this tool to do so Default value is 0 * * * * (every hour at minute 0).

POI Generation

You can use the environment vairable POI_REFRESH_FREQUENCY to configure the frenquency at which the POI refresh script is triggered by the cron job. You must use a valid cron expression, you can use this tool to do so Default value is */5 * * * * (every five minutes).

Advanced configuration

You can override the config file to have a different map, or different informations displayed. The documentation regarding the syntax and options can be found here. And you can just override the file by extnding the image with your own as follow:

FROM gregoireweber/minecraft-map-builder
COPY config.py /home/minecraft/config.py

See also

Source of used textures for render: Faithful texture pack My git repo of minecraft server in a lightweight docker image

About

Docker Images to run minecraft overviewer on your minecraft server

License:MIT License


Languages

Language:Dockerfile 33.8%Language:Shell 33.3%Language:Python 32.9%