Skip to content

Commit 4e0cb59

Browse files
Move Jukebox system to individual game servers
1 parent bc4f23e commit 4e0cb59

3 files changed

Lines changed: 17 additions & 26 deletions

File tree

src/content/docs/deployment/1_baremetal.md

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -49,30 +49,23 @@ cd /work/Komodo && ./gradlew build
4949
Then, copy the JARs into the appropriate directories:
5050

5151
```sh
52-
mkdir -p /run/server
52+
mkdir -p /data/worlds
53+
mkdir -p /data/songs
5354
mkdir -p /run/proxy/plugins
5455
mkdir /run/puffin
5556

56-
cp /work/Server/build/libs/Server-1.0-SNAPSHOT-all.jar /run/server/server.jar
57+
cp /work/Server/build/libs/Server-1.0-SNAPSHOT-all.jar /data/server.jar
5758
cp /work/Komodo/build/libs/Komodo-0.1.0-all.jar /run/proxy/plugins/komodo.jar
5859
cp /work/Puffin/build/libs/Puffin-1.0-SNAPSHOT-all.jar /run/puffin/puffin.jar
5960
```
6061

6162
Download Velocity:
6263

6364
```sh
64-
wget https://api.papermc.io/v2/projects/velocity/versions/3.3.0-SNAPSHOT/builds/370/downloads/velocity-3.3.0-SNAPSHOT-370.jar -O /run/proxy/velocity.jar
65-
```
66-
67-
Install some plugins for your Velocity proxy:
68-
69-
```sh
70-
wget https://download.luckperms.net/1526/velocity/LuckPerms-Velocity-5.4.113.jar -O /run/proxy/plugins/luckperms.jar
71-
wget https://ci.exceptionflug.de/job/Protocolize2/lastSuccessfulBuild/artifact/protocolize-velocity/target/protocolize-velocity.jar -O /run/proxy/plugins/protocolize.jar
72-
wget https://github.com/BlueDragonMC/Jukebox/releases/download/latest/Jukebox-1.0-SNAPSHOT-all.jar -O /run/proxy/plugins/jukebox.jar
65+
wget https://api.papermc.io/v2/projects/velocity/versions/3.4.0-SNAPSHOT/builds/483/downloads/velocity-3.3.0-SNAPSHOT-370.jar -O /run/proxy/velocity.jar
7366
```
7467

75-
Then, build your games as JAR files and place them in the `/run/server/games` directory. For more details on this, see [Creating a Game](/guides/creating-a-game) or the [Example Game](/intro/example-game).
68+
Then, build your games as JAR files and place them in the `/data/games` directory. For more details on this, see [Creating a Game](/guides/creating-a-game) or the [Example Game](/intro/example-game).
7669

7770
### Dependencies
7871

@@ -158,7 +151,7 @@ Komodo (the Velocity proxy plugin) reads the following configuration files:
158151

159152
In addition, you must create a `forwarding.secret` file in the `/run/proxy` folder with your forwarding secret.
160153

161-
To play note block songs, add `.nbs` files created with [Note Block Studio](https://opennbs.org/) to the `/run/proxy/plugins/bluedragon-jukebox/songs` directory.
154+
To play note block songs, add `.nbs` files created with [Note Block Studio](https://opennbs.org/) to the `/data/songs` directory.
162155
You should be able to see the songs by typing `/play` in-game.
163156

164157
Finally, change the port that Velocity runs on since `25565` is taken by the Minecraft server. You can do this by starting up Velocity (`cd /run/proxy && java -jar velocity.jar`) and letting it create a `velocity.toml` file. Then, change the `bind` property. Players will connect to your server using this address.
@@ -211,8 +204,8 @@ Minecraft server:
211204

212205
```sh
213206
# Before running, you must export the necessary environment variables from the Configuration section of this guide!
214-
cd /run/server/
215-
java -jar /run/server/server.jar
207+
cd /data
208+
java -jar /data/server.jar
216209
```
217210

218211
Velocity proxy:

src/content/docs/deployment/2_docker.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ The `/data/worlds` directory should be configured as documented [here](https://g
3232
### Songs folder
3333

3434
To play note block songs, add `.nbs` files created with [Note Block Studio](https://opennbs.org/) to a `songs` directory.
35-
These are mounted into the container at `/proxy/plugins/bluedragon-jukebox/songs/`.
35+
These are mounted into the container at `/server/songs/`.
3636
You should be able to see the songs by typing `/play` in-game.
3737

3838
## Running
@@ -97,7 +97,6 @@ git clone https://github.com/BlueDragonMC/Komodo
9797
cd Komodo
9898
docker build -t bluedragonmc/komodo:latest .
9999
docker run -d \
100-
-v /data/songs:/proxy/plugins/bluedragon-jukebox/songs/ \
101100
-e PUFFIN_VELOCITY_SECRET=<your velocity secret> \
102101
--net bluedragon-network \
103102
bluedragonmc/komodo:latest
@@ -116,6 +115,7 @@ cd Server
116115
docker build -t bluedragonmc/server:latest .
117116
docker run \
118117
-v /data/worlds:/data/worlds \
118+
-v /data/songs:/data/songs \
119119
-v ./games:/server/games \
120120
-e BLUEDRAGON_QUEUE_TYPE=IPC \
121121
-e BLUEDRAGON_MONGO_CONNECTION_STRING=mongodb://mongo:27017 \

src/content/docs/deployment/3_kubernetes.md

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -398,8 +398,6 @@ spec:
398398
volumeMounts:
399399
- name: config-volume
400400
mountPath: /proxy/config/
401-
- name: songs-volume
402-
mountPath: /proxy/plugins/bluedragon-jukebox/songs/
403401
env:
404402
- name: PUFFIN_VELOCITY_SECRET
405403
valueFrom:
@@ -424,10 +422,6 @@ spec:
424422
items:
425423
- key: proxy-config.properties
426424
path: proxy-config.properties
427-
- name: songs-volume
428-
hostPath:
429-
path: /data/songs/
430-
type: Directory
431425
---
432426
# This NodePort exposes the proxy to the internet on port 30000.
433427
# If you are using a cloud provider or MetalLB, the NodePort can
@@ -515,16 +509,20 @@ spec:
515509
memory: "1024Mi"
516510
cpu: "2000m"
517511
volumeMounts:
518-
- name: worlds-volume
512+
- name: data-volume
519513
mountPath: /server/worlds
514+
subPath: /worlds
515+
- name: data-volume
516+
mountPath: /server/songs
517+
subPath: /songs
520518
ports:
521519
- name: grpc
522520
containerPort: 50051
523521
protocol: TCP
524522
volumes:
525-
- name: worlds-volume
523+
- name: data-volume
526524
hostPath:
527-
path: /data/worlds/
525+
path: /data/
528526
type: Directory
529527
```
530528

0 commit comments

Comments
 (0)