11 คะแนน โดย GN⁺ 2024-12-08 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • คู่มือนี้อธิบายวิธีติดตั้ง Docker บนสมาร์ตโฟน Android และนำไปใช้งานเป็นโฮมเซิร์ฟเวอร์
  • ดำเนินการบนพื้นฐานของ PostmarketOS และข้อมูลทั้งหมดจะถูกลบในกระบวนการนี้ จึงแนะนำให้ใช้อุปกรณ์ที่ไม่ได้ใช้งานแล้ว
  • อุปกรณ์ดังกล่าวต้องอยู่ในรายการที่ PostmarketOS รองรับ และสามารถประยุกต์ใช้วิธีคล้ายกันกับอุปกรณ์รุ่นอื่นได้
  • สิ่งที่ต้องใช้สำหรับบทแนะนำนี้

    • โทรศัพท์ Android (แนะนำ OnePlus 6 หรือ OnePlus 6T)
    • Fastboot ที่ติดตั้งไว้บนพีซี
    • ไฟล์บูตและไฟล์อิมเมจของ PostmarketOS
  • ขั้นตอนที่ 1: เปิดใช้งานโหมดนักพัฒนาและ USB debugging

    • เปิดใช้งานโหมดนักพัฒนาบนโทรศัพท์ Android: ไปที่การตั้งค่าแล้วแตะ "หมายเลขบิลด์" หลายครั้งจนมีข้อความยืนยันว่าเปิดใช้งานโหมดนักพัฒนาแล้ว
    • ในตัวเลือกนักพัฒนา ให้เปิดใช้งาน OEM unlocking และ USB debugging
  • ขั้นตอนที่ 2: ติดตั้ง Fastboot บนพีซี

    • ดาวน์โหลดและติดตั้งแพ็กเกจ Fastboot จาก หน้า Android SDK Platform Tools
    • หลังแตกไฟล์แพ็กเกจแล้ว ให้เพิ่มโฟลเดอร์ platform-tools ลงในตัวแปรสภาพแวดล้อมของระบบ
  • ขั้นตอนที่ 3: ดาวน์โหลดไฟล์ PostmarketOS

    • ดาวน์โหลดไฟล์บูตและไฟล์อิมเมจที่ตรงกับรุ่นโทรศัพท์จาก เว็บไซต์ PostmarketOS
    • แตกไฟล์และเก็บไว้ในโฟลเดอร์เดียวกัน
  • ขั้นตอนที่ 4: เข้าโหมด Fastboot

    • รีสตาร์ตโทรศัพท์ Android แล้วบูตเข้าโหมด Fastboot
    • สำหรับ OnePlus 6T ให้กดปุ่มเพิ่มเสียง ลดเสียง และปุ่มเปิด/ปิดพร้อมกันเพื่อเข้าโหมด Fastboot
    • เชื่อมต่อกับพีซีด้วยสาย USB
  • ขั้นตอนที่ 5: แฟลช PostmarketOS

    • ตรวจสอบคู่มือการติดตั้ง PostmarketOS สำหรับอุปกรณ์แต่ละรุ่นแล้วทำการแฟลช
    • รันคำสั่งต่อไปนี้ใน Command Prompt หรือ Terminal:
      • fastboot erase userdata
      • fastboot erase dtbo
      • fastboot flash boot boot_file_name.img
      • fastboot flash userdata img_file_name.img
    • เมื่อแฟลชเสร็จแล้วให้รีสตาร์ตโทรศัพท์
  • ขั้นตอนที่ 6: ตั้งค่าเริ่มต้นและเปิดใช้งาน SSH

    • หลังรีสตาร์ตโทรศัพท์ ให้ป้อน PIN เริ่มต้น "147147"
    • เชื่อมต่อเครือข่าย Wi-Fi
    • รันคำสั่งเปิดใช้งาน SSH ในแอป Console:
      • sudo apk update
      • sudo service sshd start
      • sudo rc-update add sshd
  • ขั้นตอนที่ 7: เชื่อมต่อโทรศัพท์ผ่าน SSH จากพีซี

    • เปิด Command Prompt หรือ Terminal บนพีซี แล้วเชื่อมต่อโทรศัพท์ผ่าน SSH:
      • ssh user@IP_Address_of_the_phone
    • ชื่อผู้ใช้เริ่มต้นคือ "user"
  • ขั้นตอนที่ 8: ติดตั้ง Docker บนโทรศัพท์ Android

    • ขณะเชื่อมต่อผ่าน SSH ให้ติดตั้ง Docker ด้วยคำสั่งต่อไปนี้:
      • sudo apk add docker
      • sudo service docker start
      • sudo rc-update add docker default
    • ตรวจสอบการติดตั้ง Docker: sudo docker ps
  • การรันคอนเทนเนอร์ Docker

    • คำสั่งสำหรับรันคอนเทนเนอร์ Portainer:
      • sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
    • Portainer มีเว็บอินเทอร์เฟซสำหรับจัดการคอนเทนเนอร์ Docker
  • การเข้าถึงอินเทอร์เฟซของ Portainer

    • ในเว็บเบราว์เซอร์บนพีซี ให้พิมพ์ IP_Address_of_the_phone:9443 เพื่อเข้าใช้งานอินเทอร์เฟซของ Portainer
  • ข้อเสียของการใช้ OnePlus 6T เป็นโฮมเซิร์ฟเวอร์

    • ไม่รองรับ Ethernet: ต้องพึ่งพา Wi-Fi เพียงอย่างเดียว ซึ่งอาจขาดทั้งความเสถียรและความเร็ว
    • ไม่รองรับไดรฟ์ภายนอก: จำกัดอยู่ที่หน่วยความจำภายใน (256GB) จึงไม่เหมาะกับงานจัดเก็บข้อมูลขนาดใหญ่
  • วิธีนี้เป็นทางเลือกที่ยอดเยี่ยมแทน Raspberry Pi โดยมีทั้งหน้าจอและแบตเตอรี่ในตัว จึงมอบความสามารถได้มากกว่า

1 ความคิดเห็น

 
GN⁺ 2024-12-08
ความคิดเห็นจาก Hacker News
  • เมื่อติดตั้ง postmarketOS แล้ว ก็สามารถใช้ Linux แบบทั่วไปแทน Android ได้ และสามารถติดตั้ง Docker ได้ด้วย ตัว OOM killer ของ Android อาจปิดแอปเบื้องหลังอย่างรุนแรง จึงควรหลีกเลี่ยงหากจะตั้งค่าเป็นเซิร์ฟเวอร์ ยังสงสัยว่าการรันแบบ 24/7 จะทำได้ในระยะยาวหรือไม่เพราะปัญหาแบตเตอรี่ และแนะนำให้ถอดแบตเตอรี่ออก

  • สำหรับคนที่กำลังมองหาเซิร์ฟเวอร์พกพาราคาถูก โทรศัพท์ซีรีส์ Motorola G ถือว่าเหมาะสม รุ่นที่มาพร้อม Android 14 มีราคาไม่เกิน 120 USD และมีฟังก์ชันจำกัดการชาร์จแบตเตอรี่ ใน Termux สามารถปิดตัวฆ่าแอปเบื้องหลังได้โดยไม่ต้องใช้สิทธิ์รูท Wi‑Fi รองรับความเร็ว 350Mbit และเมื่อใช้ร่วมกับ Speedify และ Tailscale ก็สามารถให้ uptime ได้ 99%

  • มีการอ้างถึงมีมรัสเซีย พร้อมตั้งคำถามว่าทำไมถึงต้องสร้างของที่ซับซ้อนด้วยเครื่องมือที่เรียบง่าย

  • มีคนยืนยันว่าการติดตั้ง Docker บน Android ด้วย Termux นั้นง่าย และแชร์วิธีติดตั้งผ่านลิงก์ GitHub

  • มีคนสงสัยเกี่ยวกับสถานะปัจจุบันของระบบปฏิบัติการ Linux บนโทรศัพท์ และกล่าวว่าในอดีตเหมือนจะใช้โทรออกได้อย่างเดียว

  • มีคนถามว่ามีวิธีที่ดีในการทำสิ่งนี้กับโทรศัพท์ที่หน้าจอแตกหรือไม่ โดยกำลังมองหาวิธีรับข้อมูลตอบกลับผ่าน USB และเสียง และตั้งคำถามว่าสามารถเปลี่ยนหน้าจอได้หรือไม่

  • มีการประเมินในเชิงบวกต่อแนวคิดการใช้มือถือเป็นโฮมเซิร์ฟเวอร์ที่สามารถ deploy แอปพลิเคชันหลากหลายผ่าน Docker ได้

  • มีคนสงสัยว่าโทรศัพท์มือถือจะสามารถนำไปสู่การเปลี่ยนกระบวนทัศน์ของการโฮสต์บริการได้หรือไม่ ตอนนี้ยังเป็นไปไม่ได้เพราะปัญหาอายุแบตเตอรี่ แต่จำเป็นต้องมีความก้าวหน้าทางเทคโนโลยีแบตเตอรี่และ E-core ที่มีประสิทธิภาพ

  • ในอดีต การใช้โทรศัพท์มือถือเป็นเซิร์ฟเวอร์ที่มี UPS ในตัวเคยถูกมองว่าเป็นไอเดียที่เจ๋ง แต่ความเสี่ยงแบตเตอรี่ระเบิดเป็นปัญหา

  • มีคนบอกว่าน่าสนใจก็ต่อเมื่อมีโทรศัพท์ที่รองรับอยู่แล้วเท่านั้น ไม่เช่นนั้นเอาเวลาและเงินไปลงทุนกับมินิพีซีที่มีความสามารถด้านสตอเรจและพลังงานเหมาะกับการเป็นเซิร์ฟเวอร์มากกว่าจะดีกว่า