Alpine Linux คืออะไร และวิธีใช้งานบน Cloud Server

Alpine Linux คือระบบปฏิบัติการที่มีขนาดเล็กมากจนอิมเมจพื้นฐานมีขนาดเพียงไม่กี่เมกะไบต์ จึงเป็นฐานของคอนเทนเนอร์ที่นิยมที่สุดและใช้เป็นเซิร์ฟเวอร์ที่ต้องการความเบาได้

ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
1 vCPU · RAM 512 MB
ไลเซนส์
MIT และ GPL ตามแพ็กเกจ
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Alpine Linux คืออะไร

อิมเมจคอนเทนเนอร์ที่ใหญ่ทำให้ดาวน์โหลดช้า เปลืองพื้นที่ และมีพื้นที่เสี่ยงมากขึ้นเพราะมีซอฟต์แวร์ที่ไม่ได้ใช้ติดมาด้วย Alpine แก้ด้วยการตัดทุกอย่างที่ไม่จำเป็นออก

ผลคืออิมเมจพื้นฐานมีขนาดเพียงไม่กี่เมกะไบต์ เทียบกับหลายสิบถึงหลายร้อยเมกะไบต์ของดิสทริบิวชันทั่วไป ซึ่งทำให้ดาวน์โหลดเร็ว เริ่มทำงานเร็ว และมีช่องโหว่ที่ต้องตามแพตช์น้อยกว่า

ข้อควรรู้ที่สำคัญคือ Alpine ใช้ไลบรารีระบบที่ต่างจากดิสทริบิวชันทั่วไป ซอฟต์แวร์บางตัวที่คอมไพล์มาสำหรับไลบรารีมาตรฐานจึงทำงานไม่ได้หรือมีพฤติกรรมต่างไป ต้องทดสอบก่อนใช้จริงเสมอ

แผนผังการวางระบบ Alpine Linux บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 22, 443 ตัว Alpine Linux และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 1 vCPU แรม 512 MB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Alpine Linux ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Alpine Linux

ขนาดเล็กมาก

อิมเมจพื้นฐานเพียงไม่กี่เมกะไบต์ ดาวน์โหลดและเริ่มทำงานเร็ว

พื้นที่เสี่ยงน้อย

มีซอฟต์แวร์ติดตั้งน้อยจึงมีช่องโหว่ที่ต้องตามแพตช์น้อยกว่า

ตัวจัดการแพ็กเกจที่เร็ว

ติดตั้งและอัปเดตแพ็กเกจได้รวดเร็ว

ใช้หน่วยความจำน้อย

เหมาะกับเครื่องสเปกเล็กและอุปกรณ์ที่ทรัพยากรจำกัด

เป็นฐานของคอนเทนเนอร์ที่นิยมที่สุด

มีอิมเมจของภาษาและบริการต่าง ๆ ให้เลือกใช้จำนวนมาก

ใช้ Alpine Linux ทำอะไรได้บ้าง

  • อิมเมจพื้นฐานของคอนเทนเนอร์ที่ต้องการขนาดเล็ก
  • เซิร์ฟเวอร์ที่รันบริการเดียวและต้องการความเบาที่สุด
  • อุปกรณ์ปลายทางที่ทรัพยากรจำกัด
  • ระบบที่ต้องการลดพื้นที่เสี่ยงด้านความปลอดภัย

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Alpine Linux 3 ระดับ เริ่มจาก 1 vCPU แรม 512 MB ดิสก์ NVMe 10 GB ไปจนถึง 2 vCPU ขึ้นไป แรม 4 GB ขึ้นไป ดิสก์ NVMe 40 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
ขั้นต่ำบริการเดียวที่เบามาก1 vCPU512 MBNVMe 10 GB
แนะนำบริการทั่วไปที่รันในคอนเทนเนอร์1 vCPU1 GBNVMe 20 GB
ใช้งานหนักรันหลายคอนเทนเนอร์บนเครื่องเดียว2 vCPU ขึ้นไป4 GB ขึ้นไปNVMe 40 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Alpine Linux บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

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

ทดสอบบน Alpine Linux

  1. 1

    อัปเดตระบบและติดตั้งเครื่องมือพื้นฐาน

    apk update && apk upgrade
    apk add bash curl vim openssh sudo
  2. 2

    สร้างผู้ใช้และตั้งค่า SSH

    adduser -D deploy
    addgroup deploy wheel
    sed -i "s/^#*PermitRootLogin.*/PermitRootLogin no/" /etc/ssh/sshd_config
    sed -i "s/^#*PasswordAuthentication.*/PasswordAuthentication no/" /etc/ssh/sshd_config
    rc-service sshd restart
  3. 3

    ตั้งไฟร์วอลล์

    apk add iptables
    rc-update add iptables
    # ตั้งกฎให้เปิดเฉพาะพอร์ตที่จำเป็น
  4. 4

    ใช้เป็นฐานของคอนเทนเนอร์

    เมื่อใช้เป็นฐานของอิมเมจ ให้ติดตั้งเฉพาะแพ็กเกจที่แอปต้องใช้จริงและลบแคชเพื่อให้อิมเมจเล็กที่สุด

    FROM alpine:3.20
    RUN apk add --no-cache nodejs npm
    WORKDIR /app
    COPY . .
    RUN npm ci --omit=dev
    CMD ["node", "server.js"]
  5. 5

    ทดสอบว่าซอฟต์แวร์ทำงานถูกต้อง

    ทดสอบให้ครบก่อนใช้จริง เพราะไลบรารีระบบที่ต่างอาจทำให้ซอฟต์แวร์บางตัวมีพฤติกรรมต่างไปหรือทำงานช้าลงในบางกรณี

  6. 6

    ตั้งการอัปเดตความปลอดภัย

    ตรวจและอัปเดตแพ็กเกจตามรอบ และสร้างอิมเมจใหม่เมื่อมีแพตช์ความปลอดภัยของอิมเมจฐาน

    apk update && apk upgrade --available

ทดสอบซอฟต์แวร์ให้ครบก่อนใช้จริงเสมอ เพราะ Alpine ใช้ไลบรารีระบบที่ต่างจากดิสทริบิวชันทั่วไป ซอฟต์แวร์บางตัวจึงมีพฤติกรรมต่างไปหรือทำงานไม่ได้

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
22TCPSSH สำหรับผู้ดูแล (ควรจำกัดไอพี)
443TCPHTTPS ของบริการที่รันบนเครื่อง

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

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

ทำไมควรรัน Alpine Linux บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

ใช้เป็นอิมเมจฐานของแอปที่รันบน Cloud Server ทำให้ดาวน์โหลดและขยายระบบได้เร็ว

ใช้ทรัพยากรน้อยมาก จึงรันหลายบริการบนเครื่องเดียวได้คุ้มค่า

ลดพื้นที่จัดเก็บของ Registry เพราะอิมเมจมีขนาดเล็กกว่ามาก

คำถามที่พบบ่อยเกี่ยวกับ Alpine Linux

Alpine เหมาะกับงานแบบไหน

เหมาะที่สุดกับการเป็นอิมเมจฐานของคอนเทนเนอร์ที่ต้องการขนาดเล็กและปลอดภัย ส่วนการใช้เป็นระบบปฏิบัติการของเซิร์ฟเวอร์ทั่วไปทำได้แต่ต้องยอมรับว่าเครื่องมือและเอกสารน้อยกว่าดิสทริบิวชันหลัก

ทำไมบางแอปทำงานไม่ได้

เพราะ Alpine ใช้ไลบรารีระบบที่ต่างจากดิสทริบิวชันทั่วไป ซอฟต์แวร์ที่คอมไพล์มาสำหรับไลบรารีมาตรฐานจึงอาจทำงานไม่ได้ ทางแก้คือใช้อิมเมจที่คอมไพล์มาสำหรับ Alpine หรือเปลี่ยนไปใช้อิมเมจฐานอื่น

เล็กกว่าจริงแค่ไหน

อิมเมจพื้นฐานมีขนาดเพียงไม่กี่เมกะไบต์ เทียบกับหลายสิบถึงหลายร้อยเมกะไบต์ของดิสทริบิวชันทั่วไป ซึ่งเห็นผลชัดเมื่อต้องดึงอิมเมจไปรันหลายเครื่องพร้อมกันตอนขยายระบบ

บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง

ให้เราติดตั้ง Alpine Linux ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด