Zero‑Click Auto Install

ติดตั้งโปรแกรมบนเครื่องลูกข่ายด้วยคำสั่งเดียวผ่าน Web Server ภายใน (plnzee.com) · รองรับสคริปต์แบบ Non‑Interactive หรือ Interactive อัตโนมัติ

LAN Deployment One‑Liner ปลอดภัย + ตรวจสอบได้
1. เตรียม Web Server (plnzee.com)
📡 ตรวจสอบว่าเครื่อง plnzee.com มี web server (nginx/apache) และไฟล์ install.sh อยู่ใน /var/www/html/linux/
sudo mkdir -p /var/www/html/linux
sudo nano /var/www/html/linux/install.sh
sudo chmod +x /var/www/html/linux/install.sh
ตรวจสอบว่า web server ทำงาน: curl http://plnzee.com/linux2/install.sh ควรแสดงเนื้อหาสคริปต์
2. รันสคริปต์อัตโนมัติ (ไม่ต้องคลิก)
💻 วิธีที่เร็วที่สุด: ใช้ pipe ส่งสคริปต์ไปยัง bash โดยตรง — ไม่ต้องดาวน์โหลด, ไม่ต้องคลิกเมาส์, รันใน terminal ทันที
curl -fsSL http://plnzee.com/linux2/install.sh | bash
wget -qO- http://plnzee.com/linux2/install.sh | bash
ทำงานแบบ Fully Automated ได้ถ้าสคริปต์รองรับ flag --auto (ดูตัวอย่างด้านล่าง) — ผู้ใช้ไม่ต้องกด y/n เลย
📥 วิธีปลอดภัยกว่า (แนะนำ): ดาวน์โหลด → ตรวจสอบเนื้อหา → แล้วจึงรัน
wget http://plnzee.com/linux2/install.sh && cat install.sh
bash install.sh
🤖
3. Fully Non‑Interactive Mode (ไร้การถาม y/n)
✅ ใช้สำหรับการติดตั้งอัตโนมัติในวงกว้าง โดยสคริปต์จะไม่รอรับ input จากผู้ใช้ (เหมาะกับ CI/CD หรือ Deployment ข้ามคืน)
curl -fsSL http://plnzee.com/linux2/install.sh | bash -s -- --auto
yes | bash install.sh
echo "y" | bash install.sh
เทคนิค: ในสคริปต์ให้ตรวจสอบตัวแปร $1 ถ้าเป็น --auto ให้ตั้งค่า ASSUME_YES=true และข้ามทุก read -p
#!/bin/bash
# install.sh พร้อมโหมดอัตโนมัติ
AUTO=false
[[ "$1" == "--auto" ]] && AUTO=true

confirm() {
    if [ "$AUTO" = true ]; then
        return 0  # ตอบ yes อัตโนมัติ
    fi
    read -p "$1 (y/n): " -n 1 -r
    echo
    [[ $REPLY =~ ^[Yy]$ ]]
}

echo "กำลังติดตั้งโปรแกรมตัวอย่าง..."
if confirm "คุณต้องการติดตั้ง nginx หรือไม่"; then
    sudo apt update && sudo apt install -y nginx
    echo "✅ ติดตั้ง nginx เสร็จสมบูรณ์"
else
    echo "ข้ามการติดตั้ง nginx"
fi
📜
4. ตัวอย่าง install.sh ฉบับสมบูรณ์ (ใช้ได้จริง)
🔧 สคริปต์นี้ติดตั้ง Docker + Nginx พร้อมถามผู้ใช้ แต่ถ้าใส่ --auto จะติดตั้งโดยไม่ต้องตอบใดๆ ทั้งสิ้น
#!/bin/bash
set -e

AUTO_MODE=false
[[ "$1" == "--auto" ]] && AUTO_MODE=true

_confirm() {
    if [ "$AUTO_MODE" = true ]; then
        return 0
    fi
    read -p "$1 [y/N]: " -n 1 -r
    echo
    [[ $REPLY =~ ^[Yy]$ ]]
}

_run_with_sudo() {
    if [ "$AUTO_MODE" = true ]; then
        sudo -n "$@" 2>/dev/null || sudo "$@"
    else
        sudo "$@"
    fi
}

echo "========================================"
echo "  Auto Installer via LAN (plnzee.com)"
echo "========================================"

if _confirm "ติดตั้ง Docker และ Docker Compose?"; then
    curl -fsSL https://get.docker.com | bash
    sudo usermod -aG docker $USER
    echo "✅ Docker ติดตั้งเรียบร้อย"
fi

if _confirm "ติดตั้ง Nginx Web Server?"; then
    _run_with_sudo apt update
    _run_with_sudo apt install -y nginx
    echo "✅ Nginx พร้อมใช้งาน"
fi

echo "🎉 การติดตั้งเสร็จสมบูรณ์ (โหมด AUTO=$AUTO_MODE)"
sudo แบบไม่ต้องใส่รหัสผ่าน? ถ้าต้องการ automation 100% ให้ตั้งค่า sudoers: echo "username ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/auto-install (ใช้ด้วยความระมัดระวัง)
🖥️
5. รันจริงจากเครื่อง Client (LAN ใดก็ได้)
📌 เพียงแค่พิมพ์คำสั่งด้านล่างใน terminal ของเครื่องที่จะติดตั้ง (Ubuntu/Debian) — ไม่ต้องคลิกอะไรเลย
curl -fsSL http://plnzee.com/linux2/install.sh | bash -s -- --auto
bash <(curl -s http://plnzee.com/linux2/install.sh) --auto
ผลลัพธ์: สคริปต์จะทำงานโดยไม่ต้องกด y/n หรือคลิกใดๆ — ติดตั้งโปรแกรมเสร็จภายในไม่กี่วินาที
⚠️
ข้อควรระวัง & คำแนะนำ
🛡️ การรัน curl | bash มีความเสี่ยงหากเซิร์ฟเวอร์ถูกบุกรุก — ควรปฏิบัติตามแนวทางนี้
  • ตรวจสอบสคริปต์ก่อนรัน: curl -s http://plnzee.com/linux2/install.sh | less
  • ใช้ Checksum หรือ GPG signature สำหรับสคริปต์สำคัญ
  • จำกัดขอบเขต sudo: ตั้งค่า NOPASSWD เฉพาะคำสั่งที่จำเป็น (ไม่ใช่ ALL)
  • ใช้ HTTPS ถ้าเป็นไปได้ (ติดตั้ง self-signed cert หรือใช้ internal CA)
  • ทดสอบใน VM ก่อน deploy จริง เพื่อป้องกัน意外的ผลกระทบ
sha256sum install.sh
curl -s http://plnzee.com/linux2/install.sh | grep -E '(curl|wget|nc|bash -i)'
⚙️
6. สร้าง alias หรือ function สำหรับติดตั้งเร็ว
📎 เพิ่ม alias ใน .bashrc ของเครื่อง client เพื่อให้พิมพ์คำสั่งสั้นลง
alias autoinstall='curl -fsSL http://plnzee.com/linux2/install.sh | bash -s -- --auto'
🔄 จากนั้นพิมพ์ autoinstall ก็จะติดตั้งอัตโนมัติทันที
✅ คัดลอกคำสั่งสำเร็จ