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
Copy file name to clipboardExpand all lines: community/Chat.md
+25-24Lines changed: 25 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,10 +16,10 @@ nav_order: 14
16
16
In the world of BlueMap where we have to support all these platforms and server configurations it is impossible to
17
17
write guides and addons that cover everyone's needs. That's why this guide will just go through an example case of
18
18
turning a regular old boring BlueMap installation on a Paper server running on a Debian VPS to a fancy one with
19
-
a web chat. You will most likely need to adapt this guide to your specific situation or find a more techsavvy friend
19
+
a web chat. You will most likely need to adapt this guide to your specific situation or find a more tech-savvy friend
20
20
to help you. You can also hire the writer of this guide ([Antti.Codes](https://antti.codes/)) for consultation for 90€/h.
21
-
Though as he is way too kindhearted he will help as much as possible on the `#3rd-party-support` channel in the official
22
-
BlueMap Discord for free.
21
+
Though as he is way too kind-hearted he will help as much as possible on the [`#3rd-party-support`](https://discord.com/channels/665868367416131594/863844716047106068) channel
22
+
in [the official BlueMap Discord](https://bluecolo.red/map-discord) for free.
23
23
24
24
## Requirements
25
25
@@ -30,7 +30,7 @@ Requirement keywords as per [RFC 2119](https://datatracker.ietf.org/doc/html/rfc
30
30
- You **MUST NOT** run a server network with Bungeecord, Velocity or similar. The addon only supports one global chat.
31
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
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 selfsigned certificates without a domain.
33
+
- You **SHOULD** have a domain. Have fun figuring out self-signed certificates without a domain.
34
34
- You **SHOULD NOT** run any chat plugins. The addon does not support them and the behaviour is undefined.
35
35
- You **MAY** grab a sysadmin friend to help you.
36
36
@@ -39,11 +39,11 @@ The guide assumes all the recommendations are followed.
39
39
## The starting situation
40
40
41
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/`.
42
+
BlueMap installed as a plugin running on port `8100`. The BlueMap is accessible 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
-

46
-

45
+

46
+

47
47
48
48
## Proxying with nginx
49
49
@@ -52,7 +52,7 @@ This is needed as we want HTTPS, NGINX auth request module and combine many serv
52
52
Install NGINX using `sudo apt install -y nginx`.
53
53
You should now be able to observe NGINX working at `http://12.34.56.789/`
54
54
55
-

55
+

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

75
+

76
76
77
77
As we no longer use BlueMap's own port for accessing it. We should prevent it from being exposed.
78
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
+
If you don't use Docker, instead of changing Docker's port bindings,
80
+
change the IP address BlueMap uses by editing [`webserver.conf`](../wiki/configs/Webserver.md) and adding `ip: "127.0.0.1"`.
80
81
81
82
## Domain and HTTPS
82
83
83
84
Proxying is cool and all but it's pretty much a no-op right now.
84
85
So open up your DNS management interface, in my case Cloudflare, and add an A record for the IP address of the server.
85
86
86
-

87
+

87
88
88
89
Change the server name in NGINX `sites-available/bluemap.conf` file to match your chosen domain like this `server_name your.domain;`
89
-
The BlueMap should be accesible at the domain, just without HTTPS still.
90
+
The BlueMap should be accessible at the domain, just without HTTPS still.
90
91
91
92
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
92
93
a tool to acquire certificates, like `acme.sh`, which is really cool. To install `acme.sh` we want to change to root user
@@ -97,7 +98,7 @@ Run `acme.sh --issue --nginx -d your.domain` to acquire the certificates for you
97
98
Though these certificates are not ready for use yet.
98
99
99
100
First we want to prepare a couple of files and permissions so everything goes smoothly with NGINX.
100
-
Run the following commmands:
101
+
Run the following commands:
101
102
102
103
```sh
103
104
addgroup certs
@@ -111,7 +112,7 @@ chmod 770 /etc/nginx/certs
111
112
chmod 660 /etc/nginx/certs/*
112
113
```
113
114
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
+
These will set up a `certs` groups and a `certs` folder which only the users in the group (root and NGINX) are allowed to access.
115
116
Now we can install the certificates we acquired earlier:
Copy file name to clipboardExpand all lines: community/CloudflareR2.md
+18-18Lines changed: 18 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,13 +34,13 @@ Cloudflare R2 is a service that allows you to host files on Cloudflare's network
34
34
Go to Websites, click on “Add a site” then write your domain name.
35
35
36
36
1. “Select your plan”
37
-
- You can choose Free plan at the bottom.
37
+
- You can choose Free plan at the bottom.
38
38
39
39
2. “Review DNS records”
40
-
- You can skip it because we don't need to set a DNS for this method.
40
+
- You can skip it because we don't need to set a DNS for this method.
41
41
42
42
3. “Change your nameservers”
43
-
- Go to the site where you bought your domain and change nameservers to Cloudflare's nameservers.
43
+
- Go to the site where you bought your domain and change nameservers to Cloudflare's nameservers.
44
44
45
45
46
46
## Creating a bucket & uploading files with rclone
@@ -72,16 +72,16 @@ Go to Websites, click on “Add a site” then write your domain name.
72
72
2. Navigate in the terminal to the directory where your BlueMap *web* files are located. You should be in the directory that contains the file `index.html`.
73
73
74
74
3. Run the following command to upload the files to your R2 bucket:
-`sync` — the command to synchronize files — files which are not present in the destination will be copied there and files which are not present in the source will be deleted in the destination.
80
-
-`.` — the current directory.
81
-
-`R2:bluemap/` — the remote you configured in the rclone configuration plus the name of your bucket.
82
-
-`--transfers=60` — the number of parallel transfers — BlueMap consists of numerous small files, so a high number of transfers is beneficial.
83
-
-`--checkers=120` — the number of parallel checks — BlueMap consists of numerous small files, so a high number of checks is beneficial. Checkers compare your local files to those remote.
-`sync` — the command to synchronize files — files which are not present in the destination will be copied there and files which are not present in the source will be deleted in the destination.
80
+
-`.` — the current directory.
81
+
-`R2:bluemap/` — the remote you configured in the rclone configuration plus the name of your bucket.
82
+
-`--transfers=60` — the number of parallel transfers — BlueMap consists of numerous small files, so a high number of transfers is beneficial.
83
+
-`--checkers=120` — the number of parallel checks — BlueMap consists of numerous small files, so a high number of checks is beneficial. Checkers compare your local files to those remote.
84
+
-`-P` — shows you the progress.
85
85
86
86
4. While the files are uploading, you can continue with the next step.
87
87
@@ -96,7 +96,7 @@ Go to Websites, click on “Add a site” then write your domain name.
96
96
3. In the first field select `URI Path` and in the Operator field select `ends with`. In the value field, enter `/`.
97
97
2. Further down under Path, select `Rewrite to...`.
98
98
1. In the first field select `Dynamic` and in the second field enter `concat(http.request.uri.path, "index.html")`.
99
-
3. It should look similar to this: 
99
+
3. It should look similar to this: 
100
100
4. Save the rule.
101
101
102
102
3. Create another Transform rule here and give it a name, e.g. `BlueMap: gzip`. This rule allows Cloudflare to serve the compressed files when the textures or the .prbm files are requested.
@@ -110,7 +110,7 @@ Go to Websites, click on “Add a site” then write your domain name.
110
110
7. In the first field select `URI Path` and in the Operator field select `ends with`. In the value field, enter `.prbm`.
111
111
2. Further down under Path, select `Rewrite to...`.
112
112
1. In the first field select `Dynamic` and in the second field enter `concat(http.request.uri.path, ".gz")`.
113
-
3. It should look similar to this: 
113
+
3. It should look similar to this: 
114
114
4. Save the rule.
115
115
116
116
4. Now click on the `Modify Response Header` tab and create a new rule. This rule marks the compressed files as compressed, so your browser knows how to handle them when it requests them.
@@ -123,7 +123,7 @@ Go to Websites, click on “Add a site” then write your domain name.
123
123
5. In the first field, select `URI Path`. In the Operator field, select `ends with`. In the value field, enter `.prbm`.
124
124
3. Further down under `Modify response header`.
125
125
1. In the first field, select `Set static`. In the Header name field, enter `Content-Encoding`. In the Header value field, enter `gzip`.
126
-
4. It should look similar to this: 
126
+
4. It should look similar to this: 
127
127
5. Save the rule.
128
128
129
129
## Making optional configurations
@@ -139,7 +139,7 @@ Every time a file is requested from your bucket, that counts as an operation. Ev
139
139
1. Now select `Ignore cache-control header and use this TTL` and set `Input time-to-live (TTL)` to a value you are comfortable with. I set it to 1 year, this will cache the files on Cloudflare's edge servers for up to 1 year.
140
140
5. Further down under `Browser TTL` click on `Add Setting`.
141
141
1. Now select `Override origin and use this TTL` and set `Input time-to-live (TTL)` to a value you are comfortable with. I set it to 1 year, this will cache the files in the browser for up to 1 year.
142
-
6. It should look similar to this: 
142
+
6. It should look similar to this: 
143
143
7. Save the rule.
144
144
145
-
2. If you have a paid plan, you can potentially use “Custom error responses” to change 404 errors to 204 errors as suggested by the [External Web server documentation]({{site.baseurl}}/wiki/webserver/ExternalWebserversFile). This is however, not necessary for BlueMap to work. Since this documentation is about Cloudflare R2 and the free domain plan, I will not go into detail about this.
145
+
2. If you have a paid plan, you can potentially use “Custom error responses” to change 404 errors to 204 errors as suggested by the [External Web server documentation](../wiki/webserver/ExternalWebserversFile.md). This is however, not necessary for BlueMap to work. Since this documentation is about Cloudflare R2 and the free domain plan, I will not go into detail about this.
0 commit comments