พาไป Deploy Django web สุดง่ายกับ AWS Lightsail [ตอนที่ 1]

[What you get from this article]

คุณจะได้เรียนรู้การ สร้าง django web app บน AWS Lightsail ซึ่งค่อนข้างง่ายเมื่อเทียบกับ AWS EC2

[Introduction] ~บ่นเรื่อยเปื่อย

ส่วนตัวเคยลอง ec2 แล้วรู้สึกมันต้องตั้งค่าอะไรหลายๆอย่างเลยหนีมาทาง
Digital Ocean Droplet ก็ happy ดีกับชีวิตจนมีเพื่อนมาแนะนำว่าลอง
AWS Lightsail สิจึงเป็นที่มาของ blog นี้

[เข้าสู่เนื้อหา]

ตัว lightsail นั้นเป็น virtual server ที่มีการตั้งค่าพื้นฐานมาให้ก่อนแล้ว หาก application หรือ stack อยู่ในลิสเรียกว่าแทบจะเปิดเว็บได้ในคลิกเดียวโดยไม่ต้องไปยุ่งส่วนของ web server เลยหากเว็บไซต์ของคุณเติบโตขึ้นไปก็ยังสามารถย้ายไปใช้ EC2 ได้อีกด้วย ยังไม่นับการเชื่อมต่อกับ cloudfront ที่ถูกกว่าเพราะอยู่ในเครือ amazon

Pricing

หากคุณเคยลองดู pricing ของทาง EC2 จะพบว่าการคิดราคาของ EC2 ค่อนข้างปวดหัวพอสมควรจากการคิดที่ค่อนข้างมีรายละเอียดยิบย่อย (ราคาec2) แต่สำหรับ lightsail นั้นราคาจะเป็นราคาที่คิดรวมมาแล้ว จะใช้น้อยใช้เยอะก็ราคานี้สามารถคำนวณราคาได้ง่ายเหมาะสำหรับผู้เริ่มต้น

อธิบายกันไปเยอะแล้วมาลองใช้งานกันเลย! link

เริ่มต้นด้วยการที่สมัคร account ของทาง AWS เสียก่อนแล้วทำการแนบรายละเอียดการตัดงินให้เรียบร้อย

เลือกราคาที่ต้องการและสร้าง instance ใหม่ได้เลย

จัดการเซิร์ฟเวอร์ของเรา

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

การเชื่อมต่อ Filezilla เข้า Lightsail

Filezilla เป็นโปรแกรมย้ายไฟล์ผ่าน protocol ต่างๆซึ่งเป็น Open Source และเปิดให้โหลดฟรี สามารถโหลดได้ ที่นี่

เมื่อทำการ download มาแล้วจะพบกับหน้าตาประมาณนี้ โดยฝั่งซ้ายจะเป็นไฟล์ในเครื่องของเรา ฝั่งขวาเป็นไฟล์ของ server เรา โดยเราจำเป็นต้องใช้ keypair ที่เราได้ทำการ downloadจากขั้นตอนที่แล้วมา
เลือก Edit -> Settings

เลือกคลิ้กที่ new site ตั้งชื่อแล้วเลือก protocol เป็น SFTP ส่วนของ host ใส่เป็น IP lightsail ของเรา Port เว้นว่างไว้ user ใช้เป็น bitnami

เมื่อเราทำเสร็จแล้วเราก็สามารถโอนไฟล์ website ของเราเข้าไปยังตัว lightsail ได้เลย

[สรุป]

สิ่งที่เราทำคือ การสมัคร account aws และ สร้าง instance ของทาง lightsail และ deploy django เว็บที่ยังว่างเปล่าอยู่ กับการลง Filezilla เพื่อเตรียมพร้อมในการนำเว็บไซต์ที่เราเขียนขึ้นไปยังทาง lightsail

แล้วพบกันตอนต่อไปสำหรับการนำและตั้งค่า เว็บไซต์ของเราขึ้นไปยัง Lightsail

หากถูกใจสามารถกด clap เพื่อเป็นกำลังใจให้กับทางทีมงาน stackpython ได้นะครับ :)

Isarafx_Stackpython

Full Stack Python Developers

Full Stack Python Developers