Ruk-Com Cloud PaaS อนุญาตให้สร้างซอฟแวร์โซลูชั่นที่เป็นแพ็กเกจของ Docker คอนเทนเนอร์และจัดเก็บไว้ที่ Docker Hub หรือการลงทะเบียน (registry) อื่นๆ (รวมทั้งแบบ private) โดยวิธีนี้คุณจะได้รับประโยชน์ทั้งหมดภายในแพลตฟอร์ม (เช่นการปรับขนาด horizontal/vertical, การบันทึก, สถิติ, การสังเกตและแจ้งเตือน, การกำหนดค่า และการจัดการไฟล์ เป็นต้น) อย่างไรก็ตามไม่สามารถรับประกันได้ว่าคอนเทนเนอร์แบบกำหนดเองจะสามารถทำงานร่วมกับแอปพลิเคชันภายในคอนเทนเนอร์ได้

เคล็ดลับ: Ruk-Com Cloud จัดเตรียมซอร์ฟแวร์สแต็กที่ได้รับความนิยมสูงและเทมเพลตที่พร้อมใช้งาน สามารถอัปเดตเวอร์ชันได้เป็นประจำ (คอนเทนเนอร์ที่ผ่านการรับรอง)
ภายในคู่มือจะมีวิธีการใช้งานเบื้องต้นสำหรับการกำหนด Docker คอนเทนเนอร์ – วิธีสร้างและวิธีจัดการแอปพลิเคชันและการให้บริการทุกประเภทที่มี่อยู่ใน Docker Hub หรือ registry ส่วนตัวที่คุณกำหนดเอง
การกำหนดคอนเทนเนอร์เองจาก Docker Hub
1. เปิด environment topology wizard โดยคลิกปุ่ม New Environment ที่มุมบนด้านซ้ายของแดชบอร์ด

ในแถบด้านซ้ายของ Docker wizard คุณจะเห็นบล็อกหลายอันที่มีชื่อเลเยอร์แตกต่างงกัน โดยแต่ละบล็อกสามารถสร้างคอนเทนเนอร์แบบกำหนดเองตาม image Docker ที่เลือกใช้ในส่วนเหล่านี้เพื่อแบ่งและจัดโครงสร้าง topology ตามการใช้งานของคุณ
คุณสามารถเลือกเลเยอร์ที่ต้องการและดำเนินการต่อโดยคลิกที่ Select Image เพื่อเพิ่ม Docker images เองได้
2. เมื่อเปิด Select Container จะมีแท็บต่างๆให้เลือกมากมาย
- Quick Start – ซอร์ฟแวร์ที่ได้รับความนิยม/เทมเพลตที่ได้รับคำแนะนำ สำหรับเลเยอร์ปัจจุบัน (แท็บนี้อาจไม่มี ขึ้นอยู่กับการตั้งค่าจากผู้ให้บริการโฮสติ้ง)
- Search – ช่วยในการค้นหาเทมเพลตที่ต้องการจาก Docker Hub ส่วนกลาง
- Custom – สามารถเพิ่มเทมเพลตของคุณเองจากรีจิสเตอร์ส่วนตัวหรือรีจิสเตอร์ที่กำหนดเอง
- Favorite – สามารถจัดเก็บ image ที่คาดว่าจะใช้ในอนาคตเพื่อการเข้าถึงได้อย่างรวดเร็ว

ดังตัวอย่างข้างต้น เช่นการค้นหา Docker Hub registry ไปที่แถบค้นหา พิมพ์ชื่อเต็ม/บางส่วนของชื่อที่ต้องการลงในช่องป้อนข้อมูล อย่างเช่น dockersample/static-site แล้วกด Enter จะแสดงรายการของ dockersample ทั้งหมด จากนั้นให้คลิกที่ dockersample/static-site เพื่อเพิ่มเข้าไปในเลเยอร์แอปพลิเคชันเซิร์ฟเวอร์ (จะมีเครื่องหมายถูกและเป็นไฮไลต์) อีกทั้งยังสามารถเลือกแท็กที่จำเป็นได้จาก drop-down ด้านบน

คุณสามารถเลือกเฉพาะ Docker image เดียวหรืออินสแตนซ์หลายตัวในเทมเพลตเดียวกัน (ต่อ 1 เลเยอร์) โดยวิธีนี้คุณสามารถเพิ่ม image อื่นๆในเลเยอร์ต่างๆโดยใช้บล็อกที่เหลือได้ตามต้องการ

3. เมื่อคุณกลับมาที่ wizard พร้อมกับคอนเทนเนอร์ที่กำหนดเองทั้งหมดแล้ว คุณสามารถเริ่มกำหนดค่าและจัดการได้เช่นเดียวกับ node ทั่วไป:

4. เพียงเท่านี้ ระบบจะสร้าง environment ตามคอนเทนเนอร์ที่คุณกำหนดภายในไม่กี่นาทีและจะแสดงอยู่บนแดชบอร์ดเมื่อสร้างเสร็จ

คุณสามารถคลิก open browser เพื่อเปิดในเบราว์เซอร์แต่ละคอนเทนเนอร์ด้วยปุ่มที่เกี่ยวข้องถัดจากนั้นหรือ environment ทั้งหมดที่แสดงผ่านโดเมนที่กำหนด (ด้านล่างชื่อ environment) ในกรณีหลังนี้แอปพลิเคชันเซิร์ฟเวอร์หรือเทมเพลตของ layer balancer จะเปิดขึ้น
หมายเหตุ: คอนเทนเนอร์ที่กำหนดเองบางส่วนอาจจะไม่มีหน้าเว็บ ดังนั้นคุณอาจได้รับข้อความ 502 application down เมื่อเข้าถึง node ดังกล่าวผ่านเบราว์เซอร์ อย่างไรก็ตาม image ไม่ได้รับความเสียหาย แต่หากคุณต้องการตรวจสอบให้แน่ใจว่าบริการนี้ใช้งานได้ สามารถเช็กที่กระบวนการทำงานภายในคอนเทนเนอร์โดยเชื่อมต่อกับ SSH ส่วนในกรณีที่แอปพลิเคชันถูกทำไปใช้กับคอนเทนเนอร์ที่ไม่มี public IP ที่ port 80/backend คุณจะเห็น 502 error – บริการหยุดทำงานโดยเฉพาะในขณะที่พยายามจะเปิดใช้งาน ในกรณีนี้ต้องตรวจสอบให้แน่ใจว่าคอนเทนเนอร์ของคุณมีบริการ HTTP ที่ทำงานอยู่สำหรับจัดการคำขอที่เข้ามาผ่านพอร์ตที่กล่าวถึงข้างต้น
ตัวอย่างแอปพลิเคชัน Docker เมื่อกด open browser

หากคุณต้องการกำหนดค่าเพิ่มเติมให้กับคอนเทนเนอร์ของคุณ คุณสามารถเพิ่มได้โดยตรงผ่านแดชบอร์ด ตัวจัดการไฟล์ หรือ เทอร์มินอล หลังจากการเข้าถึงผ่าน SSH รวมถึง Web SSD ในทั้งสองกรณีคุณจะได้รับสิทธิ์การเข้าถึง root อย่างเต็มรูปแบบเพื่อดำเนินการปรับเปลี่ยนตามรูปแบบที่คุณต้องการ
คอนเทนเนอร์จาก Custom/Private Registry
นอกเหนือจากเทมเพลตสาธารณะที่สามารถใช้งานได้ใน Docker Hub registry Ruk-Com Cloud ยังช่วยให้คุณสามารถ deploy image ส่วนตัวจากรีจิสตรีที่กำหนดได้เอง โดยแพลตฟอร์มจะจดจำและจัดเก็บไว้แยกส่วนเฉพาะ) ทำให้คุณสามารถใช้งานได้ในลักษณะเดียวกับ public image ในกรณีของที่จัดเก็บจะถูกป้องกันโดยคุณจะต้องระบุข้อมูลอ้างอิงที่เหมาะสมเพื่อการเข้าถึง (เพียงครั้งเดียวในระหว่างการเพิ่ม) ในขณะเดียวกันการตรวจสอบสิทธิ์ที่ตามมาทั้งหมดสำหรับการปรับขนาดคอนเทนเนอร์หรือการติดตั้งใหม่จะถูกดำเนินการโดยอัตโนมัติ
การเพิ่ม image ดังกล่าวสามารถทำได้ผ่าน Docker topology wizard

1. เริ่มต้นด้วยการกดปุ่ม New Environment จากนั้นคลิก select image แล้วเลือกแท็บ Custom

2. คลิก Add New Image เพื่อใส่ชื่อของรีจิสตรีที่จัดเก็บไว้ลงในช่อง ด้วยเหตุนี้ image จาก Docker Hub จะสามารถระบุได้โดยไม่ต้องตั้งค่าโฮสต์รีจิสทรีที่จุดเริ่มต้นของชื่อ image

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

หากคุณไม่ต้องการใช้เทมเพลตอีกต่อไปสามารถคลิกที่ไอคอนถังขยะ (bin) ที่มุมบนขวาเพื่อลบออก ในทำนองเดียวกันหากคุณต้องการรวม image ให้อยู่ในลิส คลิกที่ไอคอนรูปดาว (star) เพื่อการใช้งานในภายหลัง
4. ในกรณีที่คุณต้องการอัปเดตข้อมูลรับรองการเข้าถึงผ่านคอนเทนเนอร์ที่กำหนดเอง โดยวางเมาส์เหนือเลเยอร์ที่เหมาะสมในแดชบอร์ด คลิกไอคอนเฟืองเพื่อขยายรายการ จากนั้นคลิกที่ตัวเลือก Repo Credentials

5. เมื่อคลิก Repo Credentials จัดเก็บคอนเทนเนอร์จะมีข้อมูลส่วนตัวโดยคุณสามารถแก้ไขใหม่โดยเปลี่ยนชื่อ Login และ Password สำหรับ image ของคุณ

ทั้งหมดนี้คือการเพิ่มคอนเทนเนอร์แบบกำหนดเองจากที่เก็บของคุณ ไม่ใช่ค่าเริ่มต้นของ Ruk-Com Cloud PaaS
เคล็ดลับ: ในกรณีที่เกิดปัญหาขณะใช้งาน Docker image ที่กำหนดเองบนแพลตฟอร์ม คุณสามารถขอความช่วยเหลือจากผู้เชี่ยวชาญด้านเทคนิคได้ที่ Stackoverflow