minecraft: First vesion of ole
This commit is contained in:
parent
72c0b43efc
commit
7b9f2a2dfc
5 changed files with 183 additions and 0 deletions
2
roles/minecraft/defaults/main.yml
Normal file
2
roles/minecraft/defaults/main.yml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
---
|
||||||
|
minecraft_sha1sum: c8f83c5655308435b3dcf03c06d9fe8740a77469
|
12
roles/minecraft/files/minecraft.service
Normal file
12
roles/minecraft/files/minecraft.service
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Minecraft Server
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=minecraft
|
||||||
|
Group=minecraft
|
||||||
|
WorkingDirectory=/srv/minecraft
|
||||||
|
ExecStart=/usr/bin/java -Xmx2048M -Xms1024M -jar /usr/local/lib/minecraft/server.jar nogui
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
54
roles/minecraft/files/server.properties
Normal file
54
roles/minecraft/files/server.properties
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
#Minecraft server properties
|
||||||
|
#Mon Mar 07 18:44:22 UTC 2022
|
||||||
|
enable-jmx-monitoring=false
|
||||||
|
rcon.port=25575
|
||||||
|
level-seed=
|
||||||
|
gamemode=survival
|
||||||
|
enable-command-block=false
|
||||||
|
enable-query=false
|
||||||
|
generator-settings={}
|
||||||
|
level-name=world
|
||||||
|
motd=A Minecraft Server
|
||||||
|
query.port=25565
|
||||||
|
pvp=true
|
||||||
|
generate-structures=true
|
||||||
|
difficulty=easy
|
||||||
|
network-compression-threshold=256
|
||||||
|
require-resource-pack=false
|
||||||
|
max-tick-time=60000
|
||||||
|
use-native-transport=true
|
||||||
|
max-players=20
|
||||||
|
online-mode=true
|
||||||
|
enable-status=true
|
||||||
|
allow-flight=false
|
||||||
|
broadcast-rcon-to-ops=true
|
||||||
|
view-distance=10
|
||||||
|
server-ip=
|
||||||
|
resource-pack-prompt=
|
||||||
|
allow-nether=true
|
||||||
|
server-port=25565
|
||||||
|
enable-rcon=false
|
||||||
|
sync-chunk-writes=true
|
||||||
|
op-permission-level=4
|
||||||
|
prevent-proxy-connections=false
|
||||||
|
hide-online-players=false
|
||||||
|
resource-pack=
|
||||||
|
entity-broadcast-range-percentage=100
|
||||||
|
simulation-distance=10
|
||||||
|
rcon.password=
|
||||||
|
player-idle-timeout=0
|
||||||
|
force-gamemode=false
|
||||||
|
rate-limit=0
|
||||||
|
hardcore=false
|
||||||
|
white-list=false
|
||||||
|
broadcast-console-to-ops=true
|
||||||
|
spawn-npcs=true
|
||||||
|
spawn-animals=true
|
||||||
|
function-permission-level=2
|
||||||
|
level-type=default
|
||||||
|
text-filtering-config=
|
||||||
|
spawn-monsters=true
|
||||||
|
enforce-whitelist=false
|
||||||
|
resource-pack-sha1=
|
||||||
|
spawn-protection=16
|
||||||
|
max-world-size=29999984
|
114
roles/minecraft/tasks/main.yml
Normal file
114
roles/minecraft/tasks/main.yml
Normal file
|
@ -0,0 +1,114 @@
|
||||||
|
---
|
||||||
|
- name: install prequisites
|
||||||
|
ansible.builtin.package:
|
||||||
|
name: java-17-openjdk
|
||||||
|
state: installed
|
||||||
|
|
||||||
|
- name: create group
|
||||||
|
ansible.builtin.group:
|
||||||
|
name: minecraft
|
||||||
|
gid: 1007
|
||||||
|
|
||||||
|
- name: create user
|
||||||
|
ansible.builtin.user:
|
||||||
|
name: minecraft
|
||||||
|
comment: Service Minecraft
|
||||||
|
uid: 1007
|
||||||
|
group: minecraft
|
||||||
|
create_home: false
|
||||||
|
home: /var/empty
|
||||||
|
shell: /sbin/nologin
|
||||||
|
|
||||||
|
- name: create data directory
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: /export/minecraft
|
||||||
|
state: directory
|
||||||
|
mode: 0750
|
||||||
|
owner: root
|
||||||
|
group: minecraft
|
||||||
|
|
||||||
|
- name: link data directory
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: /srv/minecraft
|
||||||
|
src: /export/minecraft
|
||||||
|
state: link
|
||||||
|
follow: false
|
||||||
|
owner: root
|
||||||
|
group: "{{ ansible_wheel }}"
|
||||||
|
|
||||||
|
- name: create writable data directories
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "/srv/minecraft/{{ item }}"
|
||||||
|
state: directory
|
||||||
|
mode: 0770
|
||||||
|
owner: root
|
||||||
|
group: minecraft
|
||||||
|
with_items:
|
||||||
|
- crash-reports
|
||||||
|
- libraries
|
||||||
|
- logs
|
||||||
|
- versions
|
||||||
|
- world
|
||||||
|
|
||||||
|
- name: accept eula
|
||||||
|
ansible.builtin.copy:
|
||||||
|
dest: /srv/minecraft/eula.txt
|
||||||
|
content: |
|
||||||
|
eula=true
|
||||||
|
mode: 0640
|
||||||
|
owner: root
|
||||||
|
group: minecraft
|
||||||
|
|
||||||
|
- name: create server config
|
||||||
|
ansible.builtin.copy:
|
||||||
|
dest: /srv/minecraft/server.properties
|
||||||
|
src: server.properties
|
||||||
|
mode: 0640
|
||||||
|
owner: root
|
||||||
|
group: minecraft
|
||||||
|
|
||||||
|
- name: "create {{ item }}"
|
||||||
|
ansible.builtin.copy:
|
||||||
|
dest: "/srv/minecraft/{{ item }}"
|
||||||
|
content: []
|
||||||
|
force: false
|
||||||
|
mode: 0660
|
||||||
|
owner: root
|
||||||
|
group: minecraft
|
||||||
|
with_items:
|
||||||
|
- banned-ips.json
|
||||||
|
- banned-players.json
|
||||||
|
- ops.json
|
||||||
|
- whitelist.json
|
||||||
|
|
||||||
|
- name: create minecraft binary directory
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: /usr/local/lib/minecraft
|
||||||
|
state: directory
|
||||||
|
mode: 0755
|
||||||
|
owner: root
|
||||||
|
group: "{{ ansible_wheel }}"
|
||||||
|
|
||||||
|
- name: download minecraft binary
|
||||||
|
ansible.builtin.get_url:
|
||||||
|
dest: /usr/local/lib/minecraft/server.jar
|
||||||
|
url: >-
|
||||||
|
https://launcher.mojang.com/v1/objects/{{ minecraft_sha1sum }}/server.jar
|
||||||
|
checksum: "sha1:{{ minecraft_sha1sum }}"
|
||||||
|
mode: 0644
|
||||||
|
owner: root
|
||||||
|
group: "{{ ansible_wheel }}"
|
||||||
|
|
||||||
|
- name: create service unit file
|
||||||
|
ansible.builtin.copy:
|
||||||
|
dest: /etc/systemd/system/minecraft.service
|
||||||
|
src: minecraft.service
|
||||||
|
mode: 0644
|
||||||
|
owner: root
|
||||||
|
group: "{{ ansible_wheel }}"
|
||||||
|
|
||||||
|
- name: enable service
|
||||||
|
ansible.builtin.service:
|
||||||
|
name: minecraft
|
||||||
|
enabled: true
|
||||||
|
state: started
|
|
@ -12,3 +12,4 @@ id user group notes
|
||||||
1004 docker docker docker registry
|
1004 docker docker docker registry
|
||||||
1005 backup backup
|
1005 backup backup
|
||||||
1006 mongod mongod
|
1006 mongod mongod
|
||||||
|
1007 minecraft minecraft
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue