ฐานความรู้
การใช้งาน Zinnector®: เชื่อมต่อ ตรวจสอบ เผยแพร่
จากโปรเจกต์โลคัลสู่เว็บไซต์จริง: ลงชื่อเข้าใช้ด้วย API key, เชื่อมโยงโปรเจกต์กับช่องโฮสติ้ง, ตรวจสอบความพร้อมล่วงหน้าที่เปรียบเทียบ PHP, ดิสก์ และ WordPress ของคุณกับช่องโฮสติ้ง, แล้วพุช — พร้อมทั้งการรีพลอย, ประวัติการพลอย และบันทึกการบิวด์เมื่อมีข้อผิดพลาดเกิดขึ้น
เมื่อโปรเจกต์ทำงานในเครื่องเรียบร้อยแล้ว มีคำสั่งสี่คำสั่งที่จะนำโปรเจกต์นั้นขึ้นเว็บไซต์จริงบนโฮสติ้งของ Zinn Digital® ได้แก่: ลงชื่อเข้าใช้ เชื่อมโยงโปรเจกต์เข้ากับสล็อตโฮสติ้ง อ่านผลตรวจความพร้อม (pre-flight) และพุช (push) บทความนี้จะอธิบายรายละเอียดของแต่ละคำสั่ง สิ่งที่ระบบแสดงผล และคำสั่งที่คุณจะต้องใช้ต่อหลังจากนั้น เช่น การดีพลอยซ้ำ ประวัติการดีพลอย และบันทึกการบิวด์ (build logs)
ลงชื่อเข้าใช้ด้วย API key
สร้างคีย์ในแดชบอร์ดที่ Settings → API keys จากนั้นใช้คำสั่ง:
zinnector login
คีย์จะถูกพิมพ์ลงในพรอมต์ — ระบบจะ ไม่ รับค่าทางบรรทัดคำสั่งเป็นอันขาด ดังนั้นคีย์จึงไม่ตกค้างอยู่ในประวัติของเชลล์ (shell history) หรือรายการโพรเซส สำหรับระบบ CI ให้ส่งค่าผ่านไปในลักษณะไปป์ (pipe): echo "$ZINN_API_KEY" | zinnector login --profile ci หรือตั้งค่า ZINNECTOR_TOKEN แล้วข้ามขั้นตอน login ไปเลย คีย์จะได้รับการตรวจสอบความถูกต้องก่อนที่จะถูกบันทึก และจะถูกบันทึกด้วยสิทธิ์การเข้าถึงไฟล์โหมด 600 คำสั่ง zinnector whoami --scopes จะแสดงว่าคุณกำลังลงชื่อเข้าใช้ด้วยองค์กรใดและคีย์นั้นมีสิทธิ์อะไรบ้าง โดยคีย์ที่เป็นแซนด์บ็อกซ์จะถูกระบุป้ายกำกับไว้
เชื่อมโยงโปรเจกต์เข้ากับสล็อต
zinnector link # เลือกเว็บไซต์จากรายการ
zinnector link example.com --repo acme/site --branch main
คำสั่ง link จะเขียน ID ของเว็บไซต์ลงในไฟล์ zinnector.json และเชื่อมโยงรีโมทกิต (git remote) ของโปรเจกต์เข้ากับเว็บไซต์บนแพลตฟอร์ม เว้นแต่คุณจะใส่ตัวเลือก --no-git เพื่อให้การพุชทำการดีพลอยเว็บไซต์ได้ทันที ให้ทำการคอมมิตไฟล์ zinnector.json ด้วย: เพื่อนร่วมงานที่โคลน (clone) รีพอสิเทอรีนี้มาจะสามารถดีพลอยไปยังตำแหน่งเดียวกันได้ทันทีโดยไม่ต้องคอยบอก ไฟล์นี้ไม่มีข้อมูลลับใดๆ
อ่านผลตรวจความพร้อม (pre-flight)
zinnector check
นี่คือคำสั่งหลักที่ทำให้ CLI นี้เกิดขึ้นมา โดยคำสั่งนี้จะเปรียบเทียบโปรเจกต์ของคุณกับสล็อตที่จะทำการดีพลอยไป และจะแสดงรายการความไม่สอดคล้องกันทั้งหมด รวมถึงการเปรียบเทียบใดๆ ที่ไม่สามารถทำได้:
- เวอร์ชัน PHP โดยช่องว่างระหว่างเวอร์ชันหลักจะถูกจัดระดับเป็น สูง เนื่องจากจะทำให้เว็บไซต์ใช้งานไม่ได้อย่างแน่นอน ส่วนช่องว่างระหว่างเวอร์ชันย่อยจะถูกจัดระดับต่ำกว่า เนื่องจากหากจัดระดับทุกอย่างว่าวิกฤตจะทำให้ผู้คนเพิกเฉยต่อคำเตือน
- ว่าสล็อตนั้น สามารถสลับ ไปใช้เวอร์ชันที่คุณใช้บิวด์ได้หรือไม่, เวอร์ชัน PHP ของสล็อตนั้น เลยกำหนดสนับสนุน (End of Life) ไปแล้วหรือยัง, และเครื่องได้ ทำการติดตั้ง เวอร์ชันดังกล่าวแล้วหรือเป็นแค่การสั่งการเท่านั้น
- ขนาดและจำนวนไฟล์ ของโปรเจกต์ของคุณ เมื่อเทียบกับพื้นที่ว่างในดิสก์และจำนวนไอโนด (inode) ที่เหลืออยู่จริงบนสล็อต — โครงสร้างของ WordPress อาจทำให้ไฟล์หมดได้แม้ว่าจะยังใช้พื้นที่ดิสก์ไม่ถึงขีดจำกัดก็ตาม
- เวอร์ชัน WordPress ของทั้งสองฝั่ง, สล็อต จัดเตรียมระบบเสร็จสิ้น แล้วหรือยัง, และมี รีพอสิเทอรีเชื่อมโยงอยู่ เพื่อให้สามารถพุชไปได้หรือไม่
ระบบจะแสดงคำเตือนแต่จะไม่บล็อกการทำงาน การพบปัญหาทุกรายการสามารถข้ามได้ด้วยคำสั่ง zinnector push --force เนื่องจากคุณย่อมรู้รายละเอียดเกี่ยวกับเว็บไซต์ของตนเองดีกว่าตัวโปรแกรมตรวจสอบ การเปรียบเทียบใดที่ไม่สามารถทำได้จะถูกรายงานว่าเป็น ไม่ทราบ และจะไม่ถือว่าผ่านเด็ดขาด โดยสรุปจะแสดงจำนวนรายการทั้งหมดเสมอ โดยค่าเริ่มต้นแล้ว เวอร์ชัน PHP ในเครื่องจะเป็นเวอร์ชันที่ ระบุไว้ ใน zinnector.json ส่วนตัวเลือก --probe จะเป็นการบูตเครื่องรันไทม์ในเครื่องและทำการวัดค่าแทน ส่วน --strict จะออกจากโปรแกรมด้วยรหัสข้อผิดพลาดหากพบสถานะที่ไม่ทราบเช่นกัน ซึ่งเป็นสิ่งที่ระบบ CI ต้องการ
พุช (Push)
zinnector push
คำสั่ง push จะรันการตรวจความพร้อม ทำการพุชคอมมิตของคุณ ทริกเกอร์การดีพลอย และคอยเฝ้าดูจนกระทั่งเสร็จสมบูรณ์ พร้อมทั้งแสดงสถานะสุดท้ายและคอมมิตที่มีการดีพลอย ส่วนตัวเลือก --dry-run จะทำทุกขั้นตอนยกเว้นการดีพลอยจริง, --no-wait จะทำการทริกเกอร์และออกจากคำสั่งทันที, และ --no-git จะดีพลอยสิ่งที่มีอยู่แล้วบนแพลตฟอร์มโดยไม่ต้องพุช หากคอมมิตที่ทำการดีพลอยไม่ใช่คอมมิตที่เพิ่งพุชไป ระบบจะแจ้งเตือนให้ทราบ
เมื่อมีข้อผิดพลาดเกิดขึ้น
zinnector deploys example.com # ประวัติการดีพลอย — สถานะ, คอมมิต, ทริกเกอร์, ข้อความ
zinnector logs example.com --build # บันทึกการบิวด์ของการดีพลอยล่าสุด
zinnector logs example.com --error # บันทึกข้อผิดพลาดของเว็บไซต์
zinnector deploy example.com # ดีพลอยสิ่งที่แพลตฟอร์มมีอยู่แล้วซ้ำอีกครั้ง
zinnector ai "why is my deploy failing?"
คำสั่ง zinnector ai จะทำงานบนแพลตฟอร์มโดยอ้างอิงจากบัญชีของคุณเอง ดังนั้นจึงสามารถเข้าถึงประวัติการดีพลอยและบันทึกต่างๆ ชุดเดียวกันได้ เมื่อเรียกใช้จากภายในโปรเจกต์ ระบบจะส่งโครงสร้างของโปรเจกต์ เช่น ชื่อไดเรกทอรี เวอร์ชัน และ ID ของเว็บไซต์ ไปด้วย แต่จะ ไม่ ส่งเนื้อหาภายในไฟล์เป็นอันขาด
ที่เกี่ยวข้อง
ยังมีปัญหาอยู่ใช่ไหม?
รวมบริการช่วยเหลือในทุกแพลตฟอร์ม และตอบกลับด้วยภาษาของคุณเอง
ติดต่อฝ่ายสนับสนุน → บทความทั้งหมด →