This repository was archived by the owner on Dec 22, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathreadme-vars.yml
More file actions
144 lines (102 loc) · 7.67 KB
/
readme-vars.yml
File metadata and controls
144 lines (102 loc) · 7.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
---
# project information
project_name: amp
project_url: "https://cubecoders.com/AMP"
project_logo: "https://cubecoders.com/Content/images/LogoColor.png"
project_blurb: "AMP (Application Management Panel) is a simple to use and easy to install control panel and management system for hosting game servers. It runs on both Windows and Linux and requires no command line knowledge to get started. Everything is taken care of by its clear and intuitive web interface, making it a breeze to use."
project_github_repo_url: "https://github.com/imagegenius/docker-{{ project_name }}"
project_deprecation_status: true
project_deprecation_message: |
No longer use this image, alternative images exist
# supported architectures
available_architectures:
- { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
- { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest" }
# development version
development_versions: true
development_versions_items:
- { tag: "latest", desc: "Latest AMP Release with an Alpine base, tiny image but only java servers will work" }
- { tag: "ubuntu", desc: "Latest AMP release with an Ubuntu Base, limited to java servers at this time" }
# container parameters
param_container_name: "{{ project_name }}"
param_usage_include_mac_address: true
param_mac_address: "00:00:00:00:00:00"
param_mac_address_desc: "Set the mac_address for the license check."
param_usage_include_vols: true
param_volumes:
- { vol_path: "/config", vol_host_path: "path_to_appdata", desc: "Appdata Path" }
param_usage_include_ports: true
param_ports:
- { external_port: "8080", internal_port: "8080", port_desc: "WebUI Port" }
param_usage_include_env: true
param_env_vars:
- { env_var: "TZ", env_value: "Australia/Melbourne", desc: "Specify a timezone to use, eg. Australia/Melbourne" }
- { env_var: "USERNAME", env_value: "admin", desc: "Specify a username for the webUI" }
- { env_var: "PASSWORD", env_value: "admin", desc: "Specify a password for the webUI" }
- { env_var: "LICENCE", env_value: "00000000-0000-0000-0000-000000000000", desc: "Specify a valid license for AMP" }
# optional env variables
opt_param_usage_include_env: true
opt_param_env_vars:
- { env_var: "JAVA_VERSIONS", env_value: "7,9,13", desc: "(Alpine only) you can have multiple versions specified, seperated by a comma" }
- { env_var: "MODULE", env_value: "ADS", desc: "Which Module to use for the main instance created by this image" }
opt_param_usage_include_ports: true
opt_param_ports:
- { external_port: "25565", internal_port: "25565", port_desc: "Placeholder Minecraft Port (add more as required)" }
# application setup block
app_setup_block_enabled: true
app_setup_block: |
Inspired from (MitchTalmadge/AMP-dockerized)[https://github.com/MitchTalmadge/AMP-dockerized]
As it takes more than 10 seconds (the default timeout for Docker) for AMP to do a graceful shutdown, make sure you have no running modules. Stopping your container via Docker while you have running modules may cause corruption as Docker will kill the container.
**Java is not installed by default, see [here](https://github.com/imagegenius/docker-amp#java-versions) for more information**
## Supported Modules
**Will Work:**
- Java applications such as Minecraft Java, Minecraft Bedrock (nukkit) + others
**Won't Work:**
- [Everything Else](https://discourse.cubecoders.com/t/supported-applications-compatibility/1828#list-of-applicationsgames-supported-by-amp-and-their-support-on-each-platform-3)
## MAC Address (Important)
AMP is designed to detect hardware changes and will de-activate all instances when something significant changes. This is to stop people from sharing pre-activated instances and bypassing the licencing server. One way of detecting changes is to look at the MAC address of the host's network card. A change here will de-activate instances.
By default, Docker assigns a new MAC address to a container every time it is restarted. Therefore, unless you want to painstakingly re-activate all your instances on every server reboot, you need to assign a permanent MAC address.
For most people, this can be accomplished by generating a random MAC address in Docker's acceptable range. The instructions to do so are as follows:
- Visit this page: https://miniwebtool.com/mac-address-generator/
- Put `02:42:AC` in as the prefix
- Choose the format with colons `:`
- Generate
- Copy the generated MAC and use it when starting the container.
- For `docker run`, use the following flag: (Substitute your generated MAC)
`--mac-address="02:42:AC:XX:XX:XX"`
- For Docker Compose, use the following key next to `image`:
`mac_address: 02:42:AC:XX:XX:XX`
If you have a unique network situation, a random MAC may not work for you. In that case you will need to come up with your own solution to prevent address conflicts.
If you need help with any of this, please make an issue.
## Ports
Here's a rough (and potentially incorrect) list of default ports for the various modules. Each module also exposes port 8080 for the Web UI (can be changed with environment variables). If you find an inaccuracy, open an issue!
| Module Name | Default Ports |
| ----------- | --------------------------------------- |
| `ADS` | No additional ports. |
| `McMyAdmin` | TCP 25565 |
| `Minecraft` | TCP 25565 (Java) or UDP 19132 (Bedrock) |
Just a quick note about ports: some games use TCP, some games use UDP. Make sure you are using the right protocol. Don't fall into the trap of accidentally mapping a TCP port for a UDP game -- you won't be able to connect.
## Environment Variables
### Java Versions
| Name | Description | Default Value |
| -------- | ---------------------------------------------------------------- | ------------- |
| `JAVA_VERSIONS` | Set this to the java versions you need, java is not installed by default and must be set here. Supported java versions range from 7-17, you can have multiple versions specified, seperated by a comma. Example: `7,9,13`... | `None` |
### Module
| Name | Description | Default Value |
| -------- | ---------------------------------------------------------------- | ------------- |
| `MODULE` | Which Module to use for the main instance created by this image. | `ADS` |
To run multiple game servers under this image, use the default value of `ADS` (Application Deployment Service) which allows you to create various modules from the web ui.
To be clear, this Docker image creates ONE instance by default. If you want to create more, use `ADS` as the first instance, and create the rest with the web UI. Otherwise, you can pick any other module from the list.
Here are the accepted values for the `MODULE` variable:
| Module Name | Description |
| ----------- | ------------------------------------------------------------------------------------------------------------- |
| `ADS` | Application Deployment Service. Used to manage multiple modules. Need multiple game servers? Pick this. |
| `McMyAdmin` | If you have a McMyAdmin Licence, this will be picked for you no matter what. It is equivalent to `Minecraft`. |
| `Minecraft` | Includes Java (Spigot, Bukkit, Paper, etc.) and Bedrock servers. |
# changelog
changelogs:
- { date: "31.10.24:", desc: "add icu libs" }
- { date: "28.06.23:", desc: "add aarch64 support" }
- { date: "28.05.23:", desc: "house keeping" }
- { date: "24.01.23:", desc: "Fix services starting prematurely" }
- { date: "02.01.23:", desc: "Initial Release." }