You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* docs(wiki): add lazymc readme link
* docs(wiki): improve readability, formatting, typos
- fixed some of the formatting around the wiki (a few lists weren't displaying correctly, long paragraphs that look like they were intended to be split over multiple lines, etc)
- fixed several typos, mainly with the word "dependencies". Plus some grammar/punctuation while I was in there
- removed quite a few unnecessary whitespaces that do not effect the page layout/formatting
- fixed up some links that were either not linking, or had poor use of "[example.tld](https://example.tld)" (like quoting the whole target URL inside the link text instead of using `<https://example.tld>`?)
* Update Gemfile.lock
first time ruby user and project contributor here, not really sure if this is "ok" or not?
if you want this commit removed from the PR im more than happy to do so.
happened after running `bundle update`, which it seemed like I needed to do to get the webserver running, because of a missing dependency that bundle could not locate (missing/removed)
err msg:
```
Your bundle is locked to ffi (1.15.5-x64-mingw-ucrt) from rubygems repository https://rubygems.org/ or installed locally, but that version can no longer be found in that source
```
* Update community/Chat.md
---------
Co-authored-by: Lukas Rieger <[email protected]>
Copy file name to clipboardExpand all lines: community/BluemapLazyServer.md
+1-6Lines changed: 1 addition & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,6 @@ that allows for 24/7 viewing of the map (and map markers), even when the server
19
19
1. TOC
20
20
{:toc}
21
21
22
-
23
22
## Setting up a lazy server
24
23
25
24
The [lazymc] project can be used to set up a lazy Minecraft server. Essentially it acts just enough
@@ -30,8 +29,7 @@ Once the server is running, it monitors the number of current players and shuts
30
29
empty. It can also be configured to pause the Minecraft server instead of shutting it down so it can
31
30
be instantly resumed when the next player connects.
32
31
33
-
Detailed instructions on how to set up and configure lazymc are available in the project's README.
34
-
32
+
Detailed instructions on how to set up and configure lazymc are available in the project's [README](https://github.com/timvisee/lazymc?tab=readme-ov-file#lazymc).
35
33
36
34
## Configuring BlueMap
37
35
@@ -66,7 +64,6 @@ to be configured with a short `proxy_read_timeout` to avoid hanging while waitin
66
64
from the integrated webserver. This is because the paused server will accept the connection but not
67
65
be able to respond in any way to the request.
68
66
69
-
70
67
## Faking "live" data while server is offline
71
68
72
69
The frontend attempts to load live data (markers, players) from endpoints under
@@ -77,7 +74,6 @@ When shutting down (and periodically) BlueMap will write out the current live st
77
74
looking for so we can just service the request normally from the webroot (falling back to a 204 No
78
75
Content response if the requested file doesn't exist).
Copy file name to clipboardExpand all lines: community/Chat.md
+39-38Lines changed: 39 additions & 38 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,37 +25,38 @@ BlueMap Discord for free.
25
25
26
26
Requirement keywords as per [RFC 2119](https://datatracker.ietf.org/doc/html/rfc2119)
27
27
28
-
- You MUST have a Spigot based server. Paper SHOULD be used. The addon doesn't support other platforms.
29
-
- You MUST have root access and be able to install and configure additional software such as nginx.
30
-
- You MUST NOT run a server network with Bungeecord, Velocity or similar. The addon only supports one global chat.
31
-
- You SHOULD have a public IP address. If you don't you will need to figure out exposing ports to the internet yourself.
32
-
- You SHOULD know the basics of navigating around the command line, otherwise this will be painful.
33
-
- You SHOULD have a domain. Have fun figuring out self signed certificates without a domain.
34
-
- You SHOULD NOT run any chat plugins. The addon does not support them and the behaviour is undefined.
35
-
- You MAY grab a sysadmin friend to help you.
28
+
- You **MUST** have a Spigot based server. Paper **SHOULD** be used. The addon doesn't support other platforms.
29
+
- You **MUST** have root access and be able to install and configure additional software such as nginx.
30
+
- You **MUST NOT** run a server network with Bungeecord, Velocity or similar. The addon only supports one global chat.
31
+
- You **SHOULD** have a public IP address. If you don't you will need to figure out exposing ports to the internet yourself.
32
+
- You **SHOULD** know the basics of navigating around the command line, otherwise this will be painful.
33
+
- You **SHOULD** have a domain. Have fun figuring out self signed certificates without a domain.
34
+
- You **SHOULD NOT** run any chat plugins. The addon does not support them and the behaviour is undefined.
35
+
- You **MAY** grab a sysadmin friend to help you.
36
36
37
37
The guide assumes all the recommendations are followed.
38
38
39
39
## The starting situation
40
40
41
-
We've got a VPS running Debian. The VPS has a public IP. There is a Paper Minecraft server running on port 25565 and
42
-
BlueMap installed as a plugin running on port 8100. The BlueMap is accesible at `http://12.34.56.789:8100/`.
41
+
We've got a VPS running Debian. The VPS has a public IP. There is a Paper Minecraft server running on port `25565` and
42
+
BlueMap installed as a plugin running on port `8100`. The BlueMap is accesible at `http://12.34.56.789:8100/`.
43
43
In my case the Minecraft server is run with a Docker container as seen below.
44
44
45
45

46
46

47
47
48
48
## Proxying with nginx
49
49
50
-
Our first step is to put the BlueMap site behind nginx reverse proxy. This is needed as we want HTTPS,
51
-
nginx auth request module and combine many services under one host. Install nginx using `sudo apt install -y nginx`.
52
-
You should now be able to observe nginx working at `http://12.34.56.789/`
50
+
Our first step is to put the BlueMap site behind NGINX reverse proxy.
51
+
This is needed as we want HTTPS, NGINX auth request module and combine many services under one host.
52
+
Install NGINX using `sudo apt install -y nginx`.
53
+
You should now be able to observe NGINX working at `http://12.34.56.789/`
53
54
54
55

55
56
56
-
Next we should navigate to `/etc/nginx` to start configuring our fresh installation. We shall start by removing the
57
-
default configuration files with `sudo rm -rf ./sites-available/default ./sites-enabled/default /var/www/html`.
58
-
And creating our own using `sudo nano ./sites-available/bluemap.conf` with the following content.
57
+
Next we should navigate to `/etc/nginx` to start configuring our fresh installation
58
+
We shall start by removing the default configuration files with `sudo rm -rf ./sites-available/default ./sites-enabled/default /var/www/html`
59
+
Then create our own using `sudo nano ./sites-available/bluemap.conf` with the following content:
59
60
60
61
```nginx
61
62
server {
@@ -68,35 +69,35 @@ server {
68
69
}
69
70
```
70
71
71
-
Next we have to enable the create configuration file with `sudo ln -s ../sites-available/bluemap.conf ./sites-enabled/bluemap.conf`.
72
-
Then after reloading nginx with `sudo nginx -s reload` we should see our BlueMap at the location which had nginx welcome page earlier.
72
+
Next we have to enable the create configuration file with `sudo ln -s ../sites-available/bluemap.conf ./sites-enabled/bluemap.conf`.
73
+
Then after reloading NGINX with `sudo nginx -s reload` we should see our BlueMap at the location which had NGINX welcome page earlier.
73
74
74
75

75
76
76
-
As we no longer use BlueMap's own port for accessing it. We should prevent it from being exposed. In our `compose.yml` file
77
-
we can do `"127.0.0.1:8100:8100/tcp"` instead of `"8100:8100/tcp"`. If you don't use Docker, instead of changing Docker's
78
-
port bindings change directly the ip address BlueMap uses by editing `plugins/BlueMap/webserver.conf` and adding `ip: "127.0.0.1"`.
77
+
As we no longer use BlueMap's own port for accessing it. We should prevent it from being exposed.
78
+
In our `compose.yml` file we can do `"127.0.0.1:8100:8100/tcp"` instead of `"8100:8100/tcp"`.
79
+
If you don't use Docker, instead of changing Docker's port bindings, change the IP address BlueMap uses by editing `plugins/BlueMap/webserver.conf` and adding `ip: "127.0.0.1"`.
79
80
80
81
## Domain and HTTPS
81
82
82
-
Proxying is cool and all but it's pretty much a no-op right now. So open up your DNS management interface,
83
-
in my case Cloudflare, and add an A record for the ip address of the server.
83
+
Proxying is cool and all but it's pretty much a no-op right now.
84
+
So open up your DNS management interface, in my case Cloudflare, and add an A record for the IP address of the server.
84
85
85
86

86
87
87
-
Change the server name in nginx`sites-available/bluemap.conf` file to match your chosen domain like this `server_name your.domain;`
88
+
Change the server name in NGINX`sites-available/bluemap.conf` file to match your chosen domain like this `server_name your.domain;`
88
89
The BlueMap should be accesible at the domain, just without HTTPS still.
89
90
90
91
To get the most out of our domain we want to use free SSL certificates to secure the connection. And to do that we need
91
92
a tool to acquire certificates, like `acme.sh`, which is really cool. To install `acme.sh` we want to change to root user
92
93
with `sudo su` and run `curl https://get.acme.sh | sh -s [email protected]` with your email.
93
94
94
-
Close and reopen your terminal and change back to root with `sudo su`, so we are now ready to get some free goodies.
95
-
Run `acme.sh --issue --nginx -d your.domain` to acquire the certificates for your domain.
95
+
Close and reopen your terminal and change back to root with `sudo su`, so we are now ready to get some free goodies.
96
+
Run `acme.sh --issue --nginx -d your.domain` to acquire the certificates for your domain.
96
97
Though these certificates are not ready for use yet.
97
98
98
-
First we want to prepare a couple of files and permissions so everything goes smoothly with nginx.
99
-
Run the following commmands.
99
+
First we want to prepare a couple of files and permissions so everything goes smoothly with NGINX.
100
+
Run the following commmands:
100
101
101
102
```sh
102
103
addgroup certs
@@ -110,8 +111,8 @@ chmod 770 /etc/nginx/certs
110
111
chmod 660 /etc/nginx/certs/*
111
112
```
112
113
113
-
These will setup a `certs` groups and a `certs` folder which only the users in the group (root and nginx) are allowed to access.
114
-
Now we can install the certificates we acquired earlier.
114
+
These will setup a `certs` groups and a `certs` folder which only the users in the group (root and NGINX) are allowed to access.
115
+
Now we can install the certificates we acquired earlier:
0 commit comments