From d37dae802383894cb115dcc3a4d15ff0e8c68abb Mon Sep 17 00:00:00 2001 From: okazakee Date: Tue, 24 Jan 2023 19:24:07 +0100 Subject: [PATCH] updated readme, new sections! --- README.md | 59 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 33 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index fffd949..8a6eadf 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,10 @@ # Minecraft Servers w/ `lazymc` using Docker This is a Linux Docker image for creating Minecraft servers with `lazymc`. -[lazymc](https://github.com/timvisee/lazymc) is a utility that puts your Minecraft server to rest when idle and wakes it up when players try to connect. This allows the server to not waste resources if nobody is connected. +[lazymc](https://github.com/timvisee/lazymc) is a utility that puts your Minecraft server to rest when idle and wakes it up when players try to connect. +This allows the server to not waste resources if nobody is connected. -This image provides a basic PaperMC (or alternatives) server. All customizations are left to the user. +This image provides a basic Minecraft server using one of the supported providers. All customizations are left to the user. # To do: - [x] Add Docker Compose section in this README. @@ -11,12 +12,10 @@ This image provides a basic PaperMC (or alternatives) server. All customizations - [x] Push updated README to Dockerhub Repo. - [x] Better logging, remove useless console outputs and give the user clear and clean messages of what is going on. - [x] Replace Openjdk with Temurin -> reduced docker image size by 57.52%! -- [ ] Support for more server providers. - - [ ] Vanilla Support. - - [ ] Fabric Support. - - [ ] Pufferfish Support. - - [ ] Arclight Support. -- [ ] Automatically update server variables inside lazymc.toml. +- [ ] Add flag to disable lazymc. +- [ ] Fix builds fetch if latest is not selected. +- [ ] Build a webpage for the project. +- [ ] Automatically update server variables inside lazymc.toml: - [x] Jar startup command. - [ ] MC ports for lazymc proxy. - [ ] MC version. @@ -25,8 +24,15 @@ This image provides a basic PaperMC (or alternatives) server. All customizations - [ ] MOTDs for sleeping/starting/stopping states. - [ ] Client messages for starting/stopping states. - [ ] Rcon values. -- [ ] Add flag to disable lazymc. -- [ ] Build a webpage for the project. + +# Supported server providers: +- [x] Vanilla +- [x] Paper +- [x] Purpur +- [x] Pufferfish +- [x] Fabric +- [ ] Arclight +- [ ] Bukkit # Usage It is assumed that the user has already acquired a working Docker installation. If that is not the case, go do that and come back here when you're done. @@ -35,8 +41,6 @@ With this image, you can create a new PaperMC (or alternatives) Minecraft server `Note that running said command or docker compose indicates agreement to the Minecraft EULA.` -### Here is an example: - ## Using docker run: ```bash sudo docker run -p 25565:25565 -e CPU_ARCHITECTURE="" okazakee/mcserver-lazymc-docker @@ -65,7 +69,6 @@ services: image: okazakee/mcserver-lazymc-docker: ``` - ## Options There are several command line options that users may want to specify when utilizing this image. These options are listed below with some brief explanation. An example will be provided with each. In the example, the part that the user can change will be surrounded by angle brackets (`< >`). Remember to *remove the angle brackets* before running the command. - Port @@ -103,18 +106,22 @@ Environment variables are options that are specified in the format `-e ="< Mandatory `ENV` fields will have a `*` after their name. This image has seven environment variables: -- Server Provider - - **Name:** `SERVER_PROVIDER` - - Set this to the server provider you want to use. - - Selectable providers are: `paper`, `purpur`. - - Default value: `paper`. - - `-e SERVER_PROVIDER=""` - CPU Architecture * - **Name:** `CPU_ARCHITECTURE` - Set this to the cpu architecture you want to use. - - Selectable architectures are: `x64`, `x64-static`, `aarch64`, `armv7`. + - Usable architectures are: `x64`, `x64-static`, `aarch64`, `armv7`. - No default value for this, make sure to include it in the command. - `-e CPU_ARCHITECTURE=""` +- Server Provider + - **Name:** `SERVER_PROVIDER` + - Set this to the server provider you want to use. + - Default value: `purpur`. + - `-e SERVER_PROVIDER=""` +- Lazymc Version + - **Name:** `LAZYMC_VERSION` + - Set this to the version of `lazymc` you want to use. + - If not set, the [latest release](https://github.com/timvisee/lazymc/releases/latest) will be used. + - `-e LAZYMC_VERSION=""` - Minecraft Version - **Name:** `MC_VERSION` - Set this to the Minecraft version that the server should support. @@ -128,11 +135,6 @@ This image has seven environment variables: - If this is not set, the latest PaperMC (or alternatives) build for the specified `MC_VERSION` will be used. - Changing this on an existing server will change the version *without wiping the server*. - `-e SERVER_BUILD=""` -- Lazymc Version - - **Name:** `LAZYMC_VERSION` - - Set this to the version of `lazymc` you want to use. - - If not set, the [latest release](https://github.com/timvisee/lazymc/releases/latest) will be used. - - `-e LAZYMC_VERSION=""` - RAM - **Name:** `MC_RAM` - Set this to the amount of RAM the server can use. @@ -150,8 +152,13 @@ This image has seven environment variables: From this point, the server should be configured in the same way as any other Minecraft server. The server's files, including `server.properties`, can be found in the volume that was specified earlier. The port that was specified earlier will probably need to be forwarded as well. For details on how to do this and other such configuration, Google it, because it works the same as any other Minecraft server. ### Suggested repo for optimizing your settings: [YouHaveTrouble/minecraft-optimization](https://github.com/YouHaveTrouble/minecraft-optimization) +## Thanks to: +- [ServerJars](serverjars.com) - They're API helped me a lot massively reducing my codebase size. +- [Timvisee](https://github.com/timvisee) - Lead developer of Lazymc. +- [Crbanman's Repo](https://github.com/crbanman/papermc-lazymc-docker) - Original fork on which this project is based of. +- [Contributors](https://github.com/Okazakee/mcserver-lazymc-docker/graphs/contributors) - Thanks to everybody who has or will help with this project. -# Technical +## Technical This project *does **NOT** redistribute the Minecraft server files*. **PLEASE NOTE:** This is an unofficial project. I did not create PaperMC or other providers.