#!/bin/bash # Alpine Linux optimization script for Archipelago # Optimizes system settings for container workloads set -e echo "⚡ Optimizing Alpine Linux for container workloads..." # CPU Governor - set to performance for better container performance if [ -f /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ]; then echo "performance" > /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor 2>/dev/null || true fi # I/O Scheduler - use deadline or none for SSDs if command -v lsblk >/dev/null 2>&1; then for disk in $(lsblk -d -o NAME -n); do if [ -f "/sys/block/$disk/queue/scheduler" ]; then # Prefer none (for NVMe) or deadline (for SATA SSD) if grep -q "none" "/sys/block/$disk/queue/scheduler"; then echo none > "/sys/block/$disk/queue/scheduler" 2>/dev/null || true elif grep -q "deadline" "/sys/block/$disk/queue/scheduler"; then echo deadline > "/sys/block/$disk/queue/scheduler" 2>/dev/null || true fi fi done fi # Increase file descriptor limits cat >> /etc/security/limits.conf <> /etc/sysctl.conf </dev/null 2>&1 || true echo "✅ Alpine optimization complete!"