Basic Deploy MECAs Website Application(TH)2

2. Web application with database

Deploy Application 2 deployment และ 2 service

Prerequisite

  1. คลิกที่เมนู Workload ที่แถบเมนูด้านบน โดยหน้า Workload นี้จะแสดงชื่องานทั้งหมดที่อยู่ใน namespace นั้น คุณสามารถตรวจสอบสถานะงานของคุณได้ที่นี่

    Workloadpage

  2. คลิกที่ปุ่ม + NEW workload ทางด้านบนขวา เพื่อทำการสร้าง workload ของตัวเอง

    New workload

  3. ตั้ง workload name ที่ด้านบนซ้าย โดย workload name จะเป็นชื่อที่แสดงอยู่ในหน้า workload

    workloadname

  4. ทำในส่วน Deployment ให้เรียบร้อย โดยเริ่มจากส่วนของ Joomla ก่อน

    Joomlahub

    กรอกข้อมูลลงไปในแบบฟอร์มส่วนหัวของ Deployment

    Deployname

    ในส่วนของ container กรอกชื่อ container และ docker image ที่มาจาก repository ของ docker hub หรือ image ของคุณ

    Joomlacontainer

    ในส่วนของ Environment ค้นหา web application ที่คุณต้องการ แล้วเลื่อนลงเพื่อดูวิธีใช้ image และคุณจะเห็นรายละเอียดเกี่ยวกับ environment config

    Joomlaenv

    • นำข้อมูล environment config มาเติมในส่วนของ environment variable

    Joomlaenv

    พอร์ตของเว็บไซต์ ชื่อของพอร์ตสามารถตั้งได้อย่างอิสระ แต่เลขพอร์ตต้องใช้เลขที่คุณ run เว็บไซต์ เช่น คุณ run เว็บไซต์ บน https://localhost:4000 คุณต้องใช้เลขพอร์ต 4000 default http:80

    • Joomla สามารถใช้เลขพอร์ต 4000 หรือเลข 80 ที่เป็น default port ของ HTTP Joomlacontainer
  5. เมื่อทำในส่วนของ deployment เสร็จแล้ว ถัดมาจะเป็นส่วนของ service โดยเริ่มจาก

    AddService

    ถ้าเว็บไซต์ใช้ http หรือ https ให้คลิกที่ checkbox ของ service

    JoomlaCheckservice

    เลือก deployment ที่ต้องการเพิ่ม service และตั้งชื่อ service

    Joomlaselectdeploy

    ใส่ชื่อและเลขพอร์ต เลขพอร์ตต้องเป็นเลขของ images ใน container เช่น http:80 ,https:443 or mysql:3306

    Joomlaserviceport

  6. จากนั้น กลับมาเริ่มทำในส่วน Deployment ของ MySQL

    MysqlDeploy

    ในส่วนของ Containers

    Mysqlhub

    ในส่วนของ container กรอกชื่อ container และ docker image ที่มาจาก repository ของ docker hub หรือ image ของคุณ

    • ถ้า MySQL error คุณต้องเปลี่ยน MySQL เป็นเวอร์ชันที่ 5
    • จาก mysql->mysql:5

    Mysqlcontainers

    พอร์ตของเว็บไซต์ ชื่อของพอร์ตสามารถตั้งได้อย่างอิสระ แต่เลขพอร์ตต้องใช้เลขที่คุณ run เว็บไซต์ เช่น คุณ run เว็บไซต์ บน https://localhost:4000 คุณต้องใช้เลขพอร์ต 4000 default http:80

    • MySQL ต้องใช้พอร์ตชื่อ mysql เพราะ database ไม่ใช่เว็บไซต์ที่จะใช้ http

    Mysqlcontainers

    ในส่วนของ Environment ค้นหา web application ที่คุณต้องการ แล้วเลื่อนลงเพื่อดูวิธีใช้ image และคุณจะเห็นรายละเอียดเกี่ยวกับ environment config

    Mysqlenv

    นำข้อมูล environment config มาเติมในส่วนของ environment variable

    Mysqlenv

  7. เมื่อทำในส่วนของ deployment เสร็จแล้ว ถัดมาจะเป็นส่วนของ service โดยเริ่มจาก

    Add2Service

    checkbox เนื่องจากเว็บไซต์ไม่ได้ใช้ http หรือ https จึงไม้ต้องคลิกที่ checkbox ของ service

    MysqlCheckservice

    เลือก deployment ที่ต้องการเพิ่ม service และตั้งชื่อ service

    Mysqlselectdeploy

    ใส่ชื่อและเลขพอร์ต เลขพอร์ตต้องเป็นเลขของ images ใน container โดย mysql ต้องใช้เลข 3306

    Mysqlserviceport

  8. เมื่อเสร็จแล้วให้คลิก Deploy งานนี้ ชื่องานของคุณจะแสดงอยู่ในหน้า namespace workload portal

    คลิก Deploy

    Deployclick

    เมื่อคลิกแล้วกลับไปหน้า workload ชื่องานจะแสดงขึ้น

    WorkloadPageUpdate

  9. จากนั้นรอความคืบหน้าขณะหนึ่ง เมื่อคุณคลิกชื่องานของคุณ สถานะงานจะเป็นสีเขียว แสดงให้เห็นว่า service พร้อมแล้ว

    Joomla mysqlsuccess

  10. คุณสามารถเข้าเป็นยังเว็บไซต์โดยไปที่ url Service Name.Name space.web.meca.in.th หรือ คลิกที่ชื่อโปรเจคและเลื่อนลงไปยังส่วน service

    • ในส่วนนี้ MySQL ไม่สามารถเข้าถึงได้เนื่องจากไม่ใช่ ้HTTP service

    ServicetoWeb

    ถ้าเว็บไซต์ไม่สามารถเข้าถึงได้จะแสดงเป็น

    502badgateway

    คุณสามารถเช็ค error โดยคลิกที่ LOG รายละเอียดของ error จะแสดงขึ้น

    Logerror

    • ปัญญหาที่พบบ่อยคือ error ใน MySQL deployment เนื่องจาก resource ไม่พอ ดังนั้นคุณต้อง request resouce และ limit ที่มากขึ้น ในส่วนของ Environment

    SQLError

    • CAUTION: resource มีอย่างจำกัด ถ้าคุณ request มากไปจะเกิดการ overload

นี่คือ Joomla & MySQL website ของคุณ

คุณสามารถสร้าง account, web url และ ข้อมูลเกี่ยวกับ website ของคุณได้ที่นี่

Joomlawebsite