คู่มือภาษาและกรอบงาน

รันคอนเทนเนอร์ CodeIgniter App บน Docker

9min

Back4App Containers เป็นแพลตฟอร์มที่ทรงพลังสำหรับการโฮสต์แอปพลิเคชัน CodeIgniter ด้วยความสามารถในการปรับใช้แอปพลิเคชันที่ใช้ Docker โดยอัตโนมัติ คุณสามารถเริ่มต้นโครงการของคุณในสภาพแวดล้อมที่สามารถปรับขนาดได้และยืดหยุ่นได้อย่างง่ายดาย.

ในคู่มือนี้ เราจะพาคุณไปผ่านกระบวนการเตรียมและปรับใช้แอปพลิเคชัน CodeIgniter ของคุณบน Back4App Containers โดยครอบคลุมทุกอย่างตั้งแต่โครงการง่ายๆ ไปจนถึงการตั้งค่าที่ซับซ้อนมากขึ้น เราจะเริ่มต้นด้วยการเตรียมการที่จำเป็น จากนั้นจะไปที่การทำให้แอปพลิเคชันเป็น Docker ทดสอบในเครื่อง ผลักดันโครงการไปยัง GitHub ตั้งค่าโครงการบน Back4App Containers ตรวจสอบการปรับใช้ และแก้ไขปัญหาทั่วไป.

หากคุณมีคำถามหรือความคิดเห็น สามารถเข้าร่วมการสนทนาในช่อง #Containers บน Back4app Community บน Slack ได้ตลอดเวลา คุณยังสามารถติดต่อเราที่ community@back4app.com.

1-เตรียมแอปพลิเคชัน CodeIgniter ของคุณ

ในการเตรียมแอปพลิเคชัน CodeIgniter ของคุณสำหรับการปรับใช้บน Back4App Containers ให้ทำตามขั้นตอนเหล่านี้:

  1. ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งและกำหนดค่า CodeIgniter เวอร์ชันล่าสุดตามเอกสารอย่างเป็นทางการ.
  2. ตรวจสอบให้แน่ใจว่าขึ้นอยู่ทั้งหมดได้รับการติดตั้งและอัปเดตโดยใช้ตัวจัดการแพ็คเกจ (เช่น Composer) คุณสามารถทำได้โดยการรันคำสั่งต่อไปนี้: composer update.
  3. ปรับแต่งแอปพลิเคชันของคุณสำหรับการผลิตโดยปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดของ CodeIgniter เช่น การใช้ ENVIRONMENT ค่าคงที่เพื่อสลับระหว่างการพัฒนาและการกำหนดค่าการผลิต การทำให้ไฟล์ JavaScript และ CSS มีขนาดเล็กลงและรวมกัน และการเปิดใช้งานการแคช.
  4. อัปเดตการกำหนดค่าฐานข้อมูลของคุณเพื่อใช้ตัวแปรสภาพแวดล้อมสำหรับการจัดการการกำหนดค่าที่ง่ายขึ้น ในไฟล์ application/config/database.php ให้แทนที่ข้อมูลประจำตัวฐานข้อมูลที่กำหนดไว้ล่วงหน้าด้วยการอ้างอิงถึงตัวแปรสภาพแวดล้อม เช่นนี้:
  5. ตรวจสอบให้แน่ใจว่า URL ของแอปพลิเคชันของคุณได้รับการกำหนดค่าให้ใช้ฟังก์ชัน base_url() ซึ่งสร้าง URL ที่ถูกต้องตามสภาพแวดล้อมปัจจุบันโดยอัตโนมัติ สิ่งนี้จะช่วยให้แอปพลิเคชันของคุณทำงานได้อย่างราบรื่นทั้งในระหว่างการพัฒนาและการผลิต.

2-การทำให้เป็น Docker

ในการทำให้แอปพลิเคชัน CodeIgniter ของคุณเป็น Docker ให้สร้าง Dockerfile ที่รากของโปรเจกต์ของคุณด้วยเนื้อหาดังต่อไปนี้:

Dockerfile


Dockerfile นี้ระบุภาพพื้นฐานเป็น php:7.4-apache, คัดลอกไฟล์แอปพลิเคชันไปยัง /var/www/html/ ไดเรกทอรี และตั้งค่าการเป็นเจ้าของและสิทธิ์ที่เหมาะสม นอกจากนี้ยังเปิดใช้งาน mod_rewrite โมดูลของ Apache สำหรับการเขียน URL ใหม่.

3-ทดสอบโปรเจกต์ของคุณในเครื่อง

เพื่อตรวจสอบโปรเจกต์ของคุณในเครื่องโดยใช้ Docker ให้รันคำสั่งต่อไปนี้ในเทอร์มินัล:

Text


สิ่งนี้จะสร้างภาพ Docker และรันคอนเทนเนอร์ใหม่ด้วยตัวแปรสภาพแวดล้อมที่ระบุจากไฟล์ .env คุณสามารถเข้าถึงแอปพลิเคชันของคุณได้ที่ http://localhost:8080.

4-ผลักดันโปรเจกต์ของคุณไปยัง GitHub

เพื่อผลักดันโปรเจกต์ของคุณไปยัง GitHub ให้ทำตามขั้นตอนเหล่านี้:

  1. สร้างที่เก็บใหม่บน GitHub.
  2. เริ่มต้นโปรเจกต์ในเครื่องของคุณเป็นที่เก็บ Git โดยการรัน git init.
  3. เพิ่มไฟล์ทั้งหมดไปยังที่เก็บโดยการรัน git add ..
  4. บันทึกการเปลี่ยนแปลงโดยการรัน git commit -m "Initial commit".
  5. เชื่อมต่อที่เก็บในเครื่องของคุณกับที่เก็บระยะไกลบน GitHub โดยการรัน git remote add origin https://github.com/yourusername/your-repo-name.git.
  6. ส่งการคอมมิตในเครื่องของคุณไปยังที่เก็บระยะไกลโดยการรัน git push -u origin master.

5-ปรับใช้แอปพลิเคชันของคุณบน Back4app Containers

ในการปรับใช้แอปพลิเคชัน CodeIgniter ของคุณบน Back4App Containers ให้ทำตามขั้นตอนเหล่านี้:

  1. เข้าสู่ระบบบัญชี Back4App ของคุณและไปที่ส่วน "Containers".
  2. คลิก "สร้างแอปใหม่" และจากนั้นเลือก "แก้ไขสิทธิ์ GitHub".
  3. อนุญาตให้ Back4App เข้าถึงบัญชี GitHub ของคุณและเลือกที่เก็บที่มีโปรเจกต์ CodeIgniter ของคุณ.
  4. เมื่อเชื่อมต่อกับที่เก็บของคุณแล้วให้เลือกเพื่อดำเนินการต่อ.
  5. เลือกสาขาที่เหมาะสมและกำหนดค่าตัวแปรสภาพแวดล้อมที่จำเป็น.
  6. คลิก "สร้าง" เพื่อเริ่มกระบวนการปรับใช้ Back4App Containers จะสร้างและปรับใช้แอปพลิเคชันของคุณโดยอัตโนมัติโดยใช้ Dockerfile.

คุณสามารถติดตามเอกสารเหล่านี้เพื่อการแนะนำที่ดีกว่า:

โดยสรุป คอนเทนเนอร์จะปฏิบัติตามคำแนะนำที่ระบุใน Dockerfile ของคุณและเริ่มสร้างแอปของคุณ.

หลังจากกำหนดค่าคอนเทนเนอร์แอปของคุณ Back4app จะสร้างภาพคอนเทนเนอร์โดยอัตโนมัติโดยใช้ Dockerfile และปรับใช้แอป Express ของคุณบนแพลตฟอร์ม กระบวนการปรับใช้อาจใช้เวลาสักครู่ ขึ้นอยู่กับขนาดและความซับซ้อนของแอปพลิเคชันของคุณ.

เมื่อการปรับใช้เสร็จสมบูรณ์ คอนเทนเนอร์ Back4app จะให้ URL ที่ไม่ซ้ำกันแก่คุณซึ่งคุณสามารถเข้าถึงแอปที่ปรับใช้ของคุณได้.

6- ตรวจสอบการปรับใช้และแก้ไขข้อผิดพลาดที่อาจเกิดขึ้น

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

7-การแก้ไขปัญหาทั่วไป

นี่คือปัญหาทั่วไปบางประการที่คุณอาจพบเมื่อปรับใช้และเรียกใช้แอปพลิเคชันบน Back4App Containers พร้อมกับวิธีแก้ไข:

  1. ปัญหาสิทธิ์: ตรวจสอบให้แน่ใจว่า Dockerfile ของคุณตั้งค่าการเป็นเจ้าของและสิทธิ์ที่ถูกต้องสำหรับไฟล์แอปพลิเคชันของคุณ ตามที่แสดงในตัวอย่าง Dockerfile ในคู่มือนี้.
  2. ข้อผิดพลาดในการเชื่อมต่อฐานข้อมูล: ตรวจสอบให้แน่ใจว่าการกำหนดค่าฐานข้อมูลของคุณใช้ตัวแปรสภาพแวดล้อมและค่าที่ถูกต้องถูกตั้งค่าในแดชบอร์ด Back4App.
  3. URL ที่ไม่ถูกต้อง: ตรวจสอบให้แน่ใจว่าแอปพลิเคชันของคุณใช้ base_url() ฟังก์ชันเพื่อสร้าง URL แบบไดนามิก ทำให้สามารถทำงานได้อย่างราบรื่นในทั้งสภาพแวดล้อมการพัฒนาและการผลิต.
  4. การขาดการพึ่งพา: ตรวจสอบให้แน่ใจว่าการพึ่งพาทั้งหมดถูกติดตั้งและเป็นเวอร์ชันล่าสุดโดยใช้ตัวจัดการแพ็คเกจ (เช่น Composer) ตรวจสอบไฟล์ composer.json และ composer.lock ของคุณอีกครั้ง และอัปเดตหากจำเป็น.
  5. ข้อผิดพลาดของแอปพลิเคชัน: ตรวจสอบบันทึกแอปพลิเคชันในแดชบอร์ด Back4App สำหรับข้อผิดพลาดหรือคำเตือน แก้ไขข้อผิดพลาดในแอปพลิเคชันของคุณในเครื่องโดยใช้ Docker และแก้ไขปัญหาก่อนที่จะปรับใช้ใหม่.

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

8-ขยายแอปพลิเคชันของคุณบน Back4App Containers

เมื่อแอปพลิเคชัน CodeIgniter ของคุณเติบโตขึ้นในความนิยม คุณอาจต้องขยายเพื่อรองรับการเข้าชมที่เพิ่มขึ้น Back4App Containers ทำให้การขยายแอปพลิเคชันของคุณเป็นเรื่องง่ายโดยการปรับจำนวนคอนเทนเนอร์ที่รันแอปพลิเคชันของคุณ.

  1. การขยายแนวนอน (อยู่ระหว่างการพัฒนา): เพิ่มจำนวนคอนเทนเนอร์ที่รันแอปพลิเคชันของคุณเพื่อกระจายภาระงานระหว่างหลายอินสแตนซ์ คุณสามารถทำได้โดยการปรับจำนวนคอนเทนเนอร์ในแดชบอร์ด Back4App ของคุณ ซึ่งช่วยให้แน่ใจว่าแอปพลิเคชันของคุณยังคงตอบสนองได้ในสภาวะการเข้าชมสูง.
  2. การขยายแนวตั้ง: อัปเกรดทรัพยากรที่จัดสรรให้กับคอนเทนเนอร์ของคุณ เช่น CPU และหน่วยความจำ เพื่อรองรับภาระงานที่ต้องการมากขึ้น คุณสามารถทำได้โดยการเลือกแผนคอนเทนเนอร์ระดับสูงในแดชบอร์ด Back4App ของคุณ ซึ่งจะช่วยให้แอปพลิเคชันของคุณสามารถจัดการกับงานที่ซับซ้อนมากขึ้นหรือชุดข้อมูลที่ใหญ่ขึ้น.

9-อัปเดตแอปพลิเคชันของคุณบน Back4App Containers

การรักษาแอปพลิเคชัน CodeIgniter ของคุณให้ทันสมัยเป็นสิ่งสำคัญสำหรับการรักษาความปลอดภัยและประสิทธิภาพ เพื่ออัปเดตแอปพลิเคชันของคุณบน Back4App Containers ให้ทำตามขั้นตอนเหล่านี้:

  1. อัปเดตการพึ่งพาและการกำหนดค่าของแอปพลิเคชันของคุณในเครื่อง โดยมั่นใจว่าทุกอย่างทำงานได้ตามที่คาดหวัง.
  2. ทดสอบแอปพลิเคชันที่อัปเดตของคุณในเครื่องโดยใช้ Docker เพื่อยืนยันว่ามันทำงานได้โดยไม่มีปัญหา.
  3. บันทึกการเปลี่ยนแปลงของคุณไปยังที่เก็บ Git ของคุณและผลักดันการอัปเดตไปยัง GitHub.
  4. Back4App Containers จะตรวจจับการเปลี่ยนแปลงโดยอัตโนมัติและเริ่มการปรับใช้ใหม่ ติดตามกระบวนการปรับใช้และแก้ไขปัญหาที่อาจเกิดขึ้นระหว่างการอัปเดต.



ด้วยความช่วยเหลือจากคู่มือนี้ คุณควรมีความเข้าใจที่ดีขึ้นเกี่ยวกับวิธีการเตรียมการ ปรับใช้ และแก้ไขปัญหาแอปพลิเคชัน CodeIgniter บน Back4App Containers แพลตฟอร์มที่ทรงพลังนี้เสนอวิธีการโฮสต์แอปพลิเคชัน Rust ของคุณอย่างราบรื่นและมีประสิทธิภาพ ช่วยให้คุณหลุดพ้นจากความซับซ้อนของ DevOps และมุ่งเน้นไปที่โค้ดของคุณ.