Egg Repository

Pterodactyl Community Egg Repository

Minio S3

MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.

Read Me

minio s3

Features

Auto generate keys on server creation bypassing default minio keys

Update

Auto update minio to latest version using "update" startup feature

Automatic Key rotation using "rotate" startup feature

Auto Rotate

It's possible to rotate your keys by changing the startup option to "rotate"

Once this is changed restart your server and it will automatically move your current keys to old and create your new keys

Be sure to change your startup back to "normal" once you have started your server using "rotate". This will ensure that you don't accidentally rotate your keys twice

Known Issues

Double encryption may occur if you manually manipulate files in the keys directory

Key rotation is handled automatically, DO NOT manually delete files in keys directory

Yolks
NameTag
ghcr.io/ptero-eggs/yolks:debianghcr.io/ptero-eggs/yolks:debian
Variables
NameDescriptionEnvironment VariableDefault ValueUser ViewableUser Editable
Startup Typenormal,rotate,updateSTARTUP_TYPEnormalYesYes
Install Script
#!/bin/bash
#
apt update
apt install -y wget
ARCH=$([[ "$(uname -m)" == "x86_64" ]] && echo "amd64" || echo "arm64")
cd /mnt/server
wget https://dl.min.io/server/minio/release/linux-${ARCH}/minio
chmod +x minio
mkdir data
mkdir keys

wget https://github.com//ptero-eggs/eggs/raw/master/storage/minio/minio.sh
chmod +x minio.sh
export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
echo $MINIO_ACCESS_KEY > keys/key.txt
export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
echo $MINIO_SECRET_KEY > keys/secret.txt
echo done