initial creation of new config type

This commit is contained in:
zardzul
2026-02-10 21:12:14 +01:00
parent a0b21c3292
commit e85fff565e
22 changed files with 167 additions and 73 deletions
+4
View File
@@ -0,0 +1,4 @@
docker-compose.yml
Dockerfile
.env
.env.example
-1
View File
@@ -1 +0,0 @@
RCON_PASSWORD=""
+6 -6
View File
@@ -16,31 +16,31 @@ jobs:
path: . path: .
- name: Transfer files - name: Transfer files
uses: burnett01/rsync-deployments@7.0.1 uses: burnett01/rsync-deployments@8.0.4
with: with:
switches: -azvr --delete --exclude=".gitignore" --exclude=".git" --exclude=".gitea" --exclude="data" --exclude=".env" switches: -azvr --delete --exclude=".gitignore" --exclude=".git" --exclude=".gitea" --exclude="data" --exclude=".env"
path: . path: .
remote_path: /home/${{ secrets.USERNAME }}/minecraft-server-example-folder remote_path: /home/${{ secrets.USERNAME }}/minecraft-server-ironveil
remote_host: ${{ secrets.HOST }} remote_host: ${{ secrets.HOST }}
remote_user: ${{ secrets.USERNAME }} remote_user: ${{ secrets.USERNAME }}
remote_key: ${{ secrets.KEY }} remote_key: ${{ secrets.KEY }}
- name: Stop container - name: Stop container
uses: appleboy/ssh-action@v1.2.0 uses: appleboy/ssh-action@v1.2.5
with: with:
host: ${{ secrets.host }} host: ${{ secrets.host }}
username: ${{ secrets.USERNAME }} username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }} key: ${{ secrets.KEY }}
script: | script: |
cd minecraft-server-example-folder cd minecraft-server-ironveil
docker compose down docker compose down
- name: Start container - name: Start container
uses: appleboy/ssh-action@v1.2.0 uses: appleboy/ssh-action@v1.2.5
with: with:
host: ${{ secrets.host }} host: ${{ secrets.host }}
username: ${{ secrets.USERNAME }} username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }} key: ${{ secrets.KEY }}
script: | script: |
cd minecraft-server-example-folder cd minecraft-server-ironveil
docker compose up -d docker compose up -d
+29
View File
@@ -0,0 +1,29 @@
name: Build and Publish Docker Image
on:
push:
tags:
- v[0-9]+.[0-9]+.[0-9]+
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ secrets.DOCKER_USERNAME }}/ironveil:${{ github.ref_name }}
+2 -2
View File
@@ -9,11 +9,11 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Restart container - name: Restart container
uses: appleboy/ssh-action@v1.2.0 uses: appleboy/ssh-action@v1.2.5
with: with:
host: ${{ secrets.host }} host: ${{ secrets.host }}
username: ${{ secrets.USERNAME }} username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }} key: ${{ secrets.KEY }}
script: | script: |
cd minecraft-server-example-folder cd minecraft-server-ironveil
docker compose restart docker compose restart
+2 -1
View File
@@ -1,2 +1,3 @@
data
.env .env
world
modpack
+23
View File
@@ -0,0 +1,23 @@
# Use an official OpenJDK 17 image
FROM eclipse-temurin:17-jdk
# Set working directory
WORKDIR /server
# Copy server configuration files
COPY configuration/. .
# Copy all modpack related files
COPY modpack/. .
# Make run.sh executable
RUN chmod +x run.sh
# Expose the default Minecraft port (25565)
EXPOSE 25565
# Expose the default Minecraft RCON port (25575)
EXPOSE 25575
# Start the server using run.sh
ENTRYPOINT ["/server/run.sh"]
-26
View File
@@ -1,26 +0,0 @@
# Minecraft Server Template
This is the minecraft server template that you can use to create minecraft servers. It uses the itzg/minecraft-server docker image to create the server within a docker container for ease of deployment. Documentation for the itzg/minecraft-server image can be found [here](https://docker-minecraft-server.readthedocs.io/en/latest/).
## To run this server:
1. Use this repository as a template for a new repository.
2. Fill in the neccesary variables in the docker-compose file.
3. Copy the .env.example to a .env file and fill in the neccesary variables.
4. Run the server using `docker compose up -d`.
## Deployment:
This server can be deployed with the provided gitea pipeline. Add the following secrets to the repository under actions -> secrets:
- `HOST`: The IP of the server.
- `USERNAME`: The username of the user.
- `KEY`: The private key to connect to the server. ( Found in 1password )
A deployment is automatically run when a tag is created. The tag must be in the format `vX.X.X` where X is a number.
The pipeline `production.yml` will deploy the server when a tag is created.
Change the directory ( `minecraft-server-example-folder` ) to the directory where the server will be located in the server. This directory must be defined in both the `production.yml` and the `restart.yml`.
## Important Notes:
The data directory will be created and populated with the server files the first time the server is run. please do not add these files to the repository.
The current config is set to use Fabric, if you would like to use Forge or any other modloader, please refer to the documentation stated above.
+19
View File
@@ -0,0 +1,19 @@
# Ironveil minecraft server
To build this image you need:
- The modpack files: https://www.curseforge.com/minecraft/modpacks/over-stars/files/7566405
Build the image with the following command:
```
docker build -t ironveil:{TAG} .
```
Replace {TAG} with the version you want to use, for example 1.0.0.
To run the container, use the following command:
```
docker run -d -p 25565:25565 -p 25575:25575 --name ironveil ironveil:{TAG}
```
An example docker compose file is provided in the compose-example directory. You can use it to run the container with docker-compose. Make sure to adjust the volume paths if needed.
Publishing is done automatically on a tag creation.
+10
View File
@@ -0,0 +1,10 @@
services:
ironveil:
image: ironveil:latest
container_name: ironveil
volumes:
- ./world:/server/world
ports:
- "25565:25565"
- "25575:25575"
restart: unless-stopped
+1
View File
@@ -0,0 +1 @@
eula=true
+57
View File
@@ -0,0 +1,57 @@
#Minecraft server properties
allow-flight=false
allow-nether=true
broadcast-console-to-ops=true
broadcast-rcon-to-ops=true
difficulty=easy
enable-command-block=false
enable-jmx-monitoring=false
enable-query=false
enable-rcon=false
enable-status=true
enforce-secure-profile=true
enforce-whitelist=false
entity-broadcast-range-percentage=100
force-gamemode=false
function-permission-level=2
gamemode=survival
generate-structures=true
generator-settings={}
hardcore=false
hide-online-players=false
initial-disabled-packs=
initial-enabled-packs=vanilla
level-name=world
level-seed=
level-type=minecraft\:normal
max-chained-neighbor-updates=1000000
max-players=20
max-tick-time=60000
max-world-size=29999984
motd=Ironveil
network-compression-threshold=256
online-mode=true
op-permission-level=4
player-idle-timeout=0
prevent-proxy-connections=false
pvp=true
query.port=25565
rate-limit=0
rcon.password=
rcon.port=25575
require-resource-pack=false
resource-pack=
resource-pack-prompt=
resource-pack-sha1=
server-ip=
server-port=25565
simulation-distance=10
spawn-animals=true
spawn-monsters=true
spawn-npcs=true
spawn-protection=16
sync-chunk-writes=true
text-filtering-config=
use-native-transport=true
view-distance=10
white-list=true
+4
View File
@@ -0,0 +1,4 @@
[
"player1",
"player2"
]
+1
View File
@@ -0,0 +1 @@
{"operations":{"getModFileInfo":{"1250591,7575878":{"filename":"14ef06dc-1a65-4611-87d6-c61eea6c8b00.json","expiresAt":"2026-02-12T19:47:13.246183510Z"}},"searchModWithGameIdSlugClassId":{"432,over-stars,4471":{"filename":"3fa6caf4-40e9-4b41-91b0-6d44997753b0.json","expiresAt":"2026-02-10T20:47:13.225100126Z"}}}}
@@ -0,0 +1 @@
{"gameId":432,"fileName":"OS Serverpack v5.5.zip","gameVersions":["1.20.1","Forge"],"displayName":"OS Serverpack v5.5","sortableGameVersions":[{"gameVersionPadded":"0000000001.0000000020.0000000001","gameVersion":"1.20.1","gameVersionReleaseDate":"2023-06-12T14:26:38.477Z","gameVersionName":"1.20.1","gameVersionTypeId":75125},{"gameVersionPadded":"0","gameVersion":"","gameVersionReleaseDate":"2022-10-01T00:00:00Z","gameVersionName":"Forge","gameVersionTypeId":68441}],"downloadUrl":"https://edge.forgecdn.net/files/7575/878/OS%20Serverpack%20v5.5.zip","fileDate":"2026-02-04T16:40:45.800Z","exposeAsAlternative":null,"modId":1250591,"modules":[{"name":"mods","fingerprint":491038856},{"name":"scripts","fingerprint":2316932191},{"name":"run.bat","fingerprint":4191847801},{"name":"run.sh","fingerprint":3076618596},{"name":"user_jvm_args.txt","fingerprint":1298710358},{"name":"config","fingerprint":733434366},{"name":"global_packs","fingerprint":738911182},{"name":"kubejs","fingerprint":2552288896},{"name":"libraries","fingerprint":2766827340}],"dependencies":[],"fileFingerprint":2501413001,"releaseType":1,"hashes":[{"value":"718e65a9d3e5c2388ca899589f9b857537c68f3a","algo":1},{"value":"11e309d6a626309c3b5f279bc2f987f8","algo":2}],"parentProjectFileId":7566405,"alternateFileId":0,"id":7575878,"fileLength":792979618,"downloadCount":1,"serverPackFileId":null,"serverPack":false,"available":false}
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
password=
+1
View File
@@ -0,0 +1 @@
password: ""
+4
View File
@@ -0,0 +1,4 @@
# Generated via Docker
# Tue 10 Feb 2026 07:47:11 PM UTC
eula=true
-30
View File
@@ -1,30 +0,0 @@
services:
minecraft-server:
image: itzg/minecraft-server
stdin_open: true
tty: true
ports:
- "25565:25565"
- "25575:25575"
volumes:
- ./data:/data
- ./whitelist:/whitelist
environment:
EULA: "TRUE"
ENABLE_RCON: "TRUE"
RCON_PASSWORD: ${RCON_PASSWORD}
RCON_PORT: "25575"
MAX_PLAYERS: "69"
ICON: "https://example.com/icon.png"
TYPE: "PAPER"
VERSION: "1.21.4"
DIFFICULTY: "normal"
MEMORY: "2G"
INIT_MEMORY: "2G"
MAX_MEMORY: "4G"
SERVER_IP: ""
ENABLE_WHITELIST: "TRUE"
OVERRIDE_WHITELIST: "TRUE"
WHITELIST_FILE: /whitelist/whitelist.json
MOTD: "A Minecraft Server with docker"
restart: unless-stopped
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

-6
View File
@@ -1,6 +0,0 @@
[
{
"name":"zardzul",
"uuid":"9f0f315c-880d-48aa-a786-66ba83dcfb28"
}
]