ก่อนหน้านี้ผมเคยพูดถึงการติดตั้ง wordpress ด้วย juju โดยเชื่อมต่อกับ AWS มาแล้ว วันนี้ผมจะมาพูดถึงการติดตั้ง joomla ด้วย juju ซึ่งครั้งนี้ผมลองเชื่อมต่อกับ Azure กันบ้างนะครับ
หลังจากที่รันคำสั่ง
$ juju bootstrap
เพื่อสร้าง environment เรียบร้อยแล้ว ให้รันคำสั่งเพื่อติดตั้ง joomla
$ juju deploy joomla
จากนั้นรันคำสั่งติดตั้ง mysql เพื่อนำมาเป็น database ให้กับ wordpress
$ juju deploy mysql
ซึ่งหลังจากติดตั้งทั้ง joomla และ mysql เรียบร้อยแล้ว ลองตรวจสอบสถานะด้วยคำสั่ง
$ juju status
จะพบว่ามี machine ที่ active อยู่ทั้งหมด 3 ตัว
และสถานะของ services จะเห็นรายการ joomla กับ mysql ที่กำลังรันอยู่ (สังเกตว่า joomla รันอยู่บน machine “2” และ mysql รันอยู่บน machine “1”)
บทความครั้งที่แล้วที่ผมพูดถึงการติดตั้ง wordpress นั้นมีวิธีการคล้ายๆ กัน แต่พอถึงจุดนี้ เกิดความแตกต่างเล็กน้อย สำหรับการติดตั้ง joomla เนื่องจากเราจำเป็นต้องการค่า config บางอย่างให้ joomla ก่อน มิเช่นนั้นเราจะพบปัญหาในช่วงที่สร้าง relation ระหว่าง joomla กับ mysql
ขั้นตอนนี้ให้รันคำสั่ง
$ juju set joomla admin_password=<admin_password ที่ต้องการ>
เพื่อกำหนด password สำหรับ admin ที่จะเข้าไปจัดการระบบหลังจากติดตั้งเสร็จ
เมื่อรันคำสั่งดังกล่าวเรียบร้อยแล้ว ก็ให้สร้างความสัมพันธ์ (Relation) ระหว่าง joomla กับ mysql เพื่อกำหนดให้ mysql ทำหน้าที่เป็น database ให้กัน joomla ด้วยคำสั่ง
$ juju add-relation joomla mysql
ลองตรวจสอบสถานะอีกครั้งด้วยคำสั่ง
$ juju status
ในส่วนของ services จะเห็นว่าในส่วนของ db บน mysql มีรายการ joomla อยู่ และส่วนของ db บน joomla ก็มีรายการ mysql อยู่เช่นกัน
แต่เราจะเห็นว่าสถานะของ joomla นั้นมีสถานะ pending เนื่องจากเรายังไม่ได้รันคำสั่งให้ระบบทำงาน ซึ่งสามารถทำได้โดยการใช้คำสั่ง
$ juju expose joomla
เมื่อรันคำสั่งดังกล่าวแล้ว ให้รอสักครู่ (ไม่เกิน 3 นาที) แล้วตรวจสอบสถานะอีกครั้งด้วยคำสั่ง
$ juju status
เมื่อสังเกตว่าสถานะของ joomla เป็น started เรียบร้อยแล้ว หากต้องการตรวจสอบผลลัพธ์จากการติดตั้ง ให้คัดลอก public-address ของ joomla ไปวาง และเปิดผ่าน browser โดยให้ระบุ URL มีรูปแบบดังนี้ http://<public-address>/administrator
ซึ่งก็จะเข้าสู่หน้าจอ back end ของ joomla ที่เราคุ้นเคยกันดีครับ
หากลองเข้าไปตรวจสอบบน Microsoft Azure Portal เราก็จะพบว่ามี machine ตัวใดรันอยู่บ้าง โดยสามารถอ้างอิงได้จาก รายละเอียดที่ปรากฏ