FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive ENV TZ=Asia/Jakarta ENV NODE_OPTIONS="--dns-result-order=ipv4first" # 1. Injeksi tool esensial & paket SUDO (Kunci Pembobol Root) RUN apt-get update && apt-get install -y \ curl git ca-certificates build-essential python3 sudo \ && rm -rf /var/lib/apt/lists/* # 2. Instalasi Node.js 22 LTS Native RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \ && apt-get install -y nodejs \ && rm -rf /var/lib/apt/lists/* # 3. [INJEKSI ROOT MUTLAK] Buat User 1000 dan berikan akses Sudo absolut RUN useradd -m -u 1000 user \ && echo "user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers WORKDIR /app RUN chown -R user:user /app USER user # 4. Dummy Web Server 24/7 RUN echo "const http = require('http'); http.createServer((req, res) => { res.writeHead(200); res.end('AQSOBOTZ NATIVE ROOT'); }).listen(7860);" > health.js # 5. THE ULTIMATE ROOT STARTUP SCRIPT RUN cat << 'EOF' > /app/start.sh #!/bin/bash echo "[AQSO LOGIC] Mengeksekusi Hak Root: Membobol perlindungan DNS Host..." # Menggunakan sudo tee untuk memaksa write pada file bind mount read-only echo -e "nameserver 8.8.8.8\nnameserver 1.1.1.1" | sudo tee /etc/resolv.conf > /dev/null echo "[AQSO LOGIC] Validasi Injeksi DNS Sistem:" cat /etc/resolv.conf echo "[AQSO LOGIC] Memulai Server Dummy 24/7 di Port 7860..." node /app/health.js & echo "[AQSO LOGIC] Menarik Repository Github..." rm -rf /app/bot git clone https://github.com/Aqsobb/rut.git /app/bot cd /app/bot echo "[AQSO LOGIC] Instalasi dependensi (Clear Cache)..." npm cache clean --force npm install --no-audit --no-fund echo "[AQSO LOGIC] Injeksi Modul Telegram Mutlak..." npm install node-telegram-bot-api --save echo "[AQSO LOGIC] Menjalankan AQSOBOTZ..." if grep -q "\"start\"" package.json 2>/dev/null; then npm start elif [ -f "index.js" ]; then node index.js elif [ -f "main.js" ]; then node main.js else echo "[FATAL ERROR] File utama bot tidak ditemukan!" tail -f /dev/null fi EOF RUN chmod +x /app/start.sh EXPOSE 7860 CMD ["bash", "/app/start.sh"]