มีข้อมูลของคุณ: เรียกใช้ MariaDB ด้วย Docker

เผยแพร่แล้ว: 2022-10-25

MariaDB เป็นเซิร์ฟเวอร์ฐานข้อมูลฟรีที่ให้การเข้าถึงข้อมูลโดยใช้ภาษาคิวรีที่มีโครงสร้าง (SQL) มีคุณสมบัติด้านความปลอดภัย เช่น รหัสผ่าน การควบคุมการเข้าถึงตามบทบาท และอื่นๆ อีกมากมายเพื่อปกป้องข้อมูลของคุณ

ในการปรับใช้ MariaDB และให้สิทธิ์การเข้าถึงข้อมูลแก่ผู้ใช้ของคุณ คุณต้องโฮสต์เซิร์ฟเวอร์ฐานข้อมูล คุณสามารถเลือกผู้ให้บริการระบบคลาวด์หรือใช้บริการโฮสติ้งที่มีการจัดการหรือแชร์

บทความนี้จะสอนวิธีเรียกใช้ MariaDB โดยใช้คอนเทนเนอร์ Docker กำหนดค่าและเรียกใช้เซิร์ฟเวอร์ฐานข้อมูล และเชื่อมต่อกับเว็บไซต์ WordPress

นักเทียบท่าคืออะไร?

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

โดยปกติ คอนเทนเนอร์จะใช้ระบบปฏิบัติการของคุณเป็นโฮสต์ ซึ่งหมายความว่าเคอร์เนลของเครื่องโฮสต์ให้การเข้าถึงทรัพยากร เช่น CPU หน่วยความจำ และระบบไฟล์ ด้วยเหตุนี้จึงไม่จำเป็นต้องใช้การจำลองเสมือนแบบดั้งเดิมเช่นเครื่องเสมือน มีข้อดีหลายประการของการใช้ Docker เพื่อเรียกใช้อินสแตนซ์ MariaDB:

  • มีรอยเท้าดิจิทัลขนาดเล็ก ทำให้มั่นใจได้ถึงการใช้ทรัพยากรระบบอย่างมีประสิทธิภาพ
  • มีความสอดคล้องกัน ทำให้นักพัฒนาสามารถเรียกใช้แอปในการผลิตและทดสอบการปรับใช้โดยมีการเปลี่ยนแปลงเพียงเล็กน้อย
  • มีกลไกที่ยืดหยุ่นสำหรับการแบ่งปันทรัพยากร
  • ปรับขนาดได้ — คุณสามารถเรียกใช้คอนเทนเนอร์จำนวนมากในโฮสต์เดียว

วิธีการปรับใช้ MariaDB กับ Docker

ในส่วนนี้ คุณจะต้องสร้างสภาพแวดล้อมคอนเทนเนอร์เพื่อเรียกใช้ MariaDB โดยใช้ Docker คุณจะได้เรียนรู้เกี่ยวกับเทคโนโลยีคอนเทนเนอร์ที่นำเสนอโดย Docker Docker ใช้งานได้กับ Windows, macOS และ Linux เวอร์ชันส่วนใหญ่ สำหรับบทช่วยสอนนี้ คุณจะต้องมี Windows 10/11, Ubuntu 20.04 หรือเครื่อง macOS X เพื่อติดตาม

1. ติดตั้ง Docker

หนึ่งในคุณสมบัติที่ดีที่สุดของ Docker คือการพกพา ใช้ระบบปฏิบัติการของโฮสต์ ทำให้เหมาะสำหรับการทดสอบและเผยแพร่สภาพแวดล้อม ส่วนนี้จะสอนวิธีการติดตั้ง Docker บนระบบปฏิบัติการทั้งสาม

Ubuntu 20.04

ขั้นแรก อัปเดตรายการแพ็คเกจของ Ubuntu

 sudo apt-get update

จากนั้นให้อนุญาตการเข้าถึงที่เก็บออนไลน์ผ่าน HTTPS

 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

การติดตั้งนักเทียบท่าผ่านเทอร์มินัล
ถัดไป เพิ่มคีย์ GPG ของ Docker

 sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

ตอนนี้ เพิ่มที่เก็บของ Docker

 echo deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

จากนั้นอัปเดตแพ็คเกจของ Ubuntu เพื่อรวมที่เก็บของ Docker

 sudo apt-get update

สุดท้าย ติดตั้ง Docker Engine

 sudo apt-get install docker-ce

หากคุณกำลังใช้ลีนุกซ์รุ่นอื่น เช่น Debian หรือ Fedora ให้ทำตามเอกสารอย่างเป็นทางการสำหรับการติดตั้ง Docker ใน Linux

Windows 10/11

Docker พร้อมใช้งานบน Windows 10 หรือ 11 โดยใช้ Windows Subsystem สำหรับ Linux เวอร์ชัน 2 (WSL 2) เป็นแบ็กเอนด์ ใช้ขั้นตอนต่อไปนี้เพื่อติดตั้ง Docker

ขั้นแรก เปิดใช้งานคุณลักษณะแพลตฟอร์มเครื่องเสมือนบนระบบ Windows ของคุณ สิ่งนี้ทำให้คุณสามารถติดตั้ง WSL 2 และติดตั้งและเรียกใช้อินสแตนซ์ Linux เสมือนจริงบนเครื่อง Windows ของคุณ

ถัดไป ติดตั้ง WSL

จากนั้นไปที่ Microsoft Store เพื่อดาวน์โหลด Ubuntu 20.04

สุดท้าย ดาวน์โหลด Docker Desktop สำหรับ Windows เปิดไฟล์ที่ดาวน์โหลดเพื่อเริ่มกระบวนการติดตั้ง

หลังการติดตั้ง ค้นหา Docker Desktop จากทาสก์บาร์ของคุณและเปิดขึ้น

( หมายเหตุ: คุณจะต้องใช้ PowerShell เป็นเทอร์มินัลเพื่อใช้คำสั่ง Docker)

macOS X

Docker พร้อมใช้งานบนเครื่อง macOS ผ่าน Apple App Store มีตัวติดตั้งสองตัวที่กำหนดเป้าหมายทั้งชิป Intel และ Apple

ขั้นแรก ดาวน์โหลดตัวติดตั้งที่เหมาะสมจากลิงค์ใดลิงค์หนึ่งด้านบน จากนั้นดับเบิลคลิกเพื่อเปิด ไฟล์ .dmg ที่ดาวน์โหลดมา

ถัดไป ลากและวางไอคอน Docker ลงในโฟลเดอร์ Applications

ตอนนี้ เปิดแอป Docker จากโฟลเดอร์ Applications และปฏิบัติตามคำแนะนำเพื่อกำหนดค่าให้เสร็จสิ้น

เมื่อกระบวนการติดตั้งเสร็จสิ้น ให้ดับเบิลคลิกที่ไอคอน Docker ในแถบสถานะเดสก์ท็อปของคุณเพื่อเปิด

ใช้เทอร์มินัลเริ่มต้นเพื่อรันคำสั่ง Docker

2. ดาวน์โหลด MariaDB Image

อิมเมจ Docker มีชุดคำสั่งและการกำหนดค่าเพื่อสร้างคอนเทนเนอร์ Docker มีหน้าที่ติดตั้งทุกอย่างที่จำเป็นในการเรียกใช้แอปพลิเคชัน คุณสามารถค้นหารูปภาพอย่างเป็นทางการของ MariaDB ได้จาก Docker Hub

ในการดาวน์โหลดอิมเมจของ MariaDB จาก Docker Hub คุณจะต้องใช้คำสั่ง docker pull :

 docker pull mariadb

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

 docker images

นี่คือผลลัพธ์ของคำสั่ง:

แสดงรายการภาพ Docker
แสดงรายการภาพ Docker

3. สร้างคอนเทนเนอร์

คอนเทนเนอร์คือหน่วยซอฟต์แวร์ที่มีโค้ด การขึ้นต่อกัน และเครื่องมือระบบทั้งหมดที่จำเป็นในการรันกระบวนการหรือโปรแกรม คุณจะใช้ภาพที่ดาวน์โหลดมาก่อนเพื่อสร้างคอนเทนเนอร์ MariaDB

 docker create mariadb --name mariadb-wp -i –t

สิ่งนี้จะสร้างคอนเทนเนอร์ MariaDB ชื่อ mariadb-wp แฟล็ก –i อนุญาตให้มีเซสชันแบบโต้ตอบ และอ็อพชัน –t จะสร้างเทอร์มินัลหลอก เอกสารอย่างเป็นทางการให้ข้อมูลเกี่ยวกับตัวแปรที่มีอยู่ทั้งหมด

4. เรียกใช้ หยุดชั่วคราว และหยุดคอนเทนเนอร์

Docker ช่วยให้นักพัฒนามีความยืดหยุ่นในสภาพแวดล้อมที่กำหนดค่าได้ ในส่วนนี้ เราจะกำหนดค่าคอนเทนเนอร์ของ MariaDB ด้วยตัวแปรสภาพแวดล้อมเพื่อตั้งค่าคุณสมบัติของระบบเฉพาะสำหรับคอนเทนเนอร์ของคุณ

MariaDB มีตัวแปรมากมายที่คุณสามารถตั้งค่าได้ เช่น ชื่อฐานข้อมูล รหัสผ่าน และผู้ใช้ฐานข้อมูล สำหรับรายการที่กว้างขึ้นของตัวแปรสภาพแวดล้อมที่รองรับ โปรดดูเอกสารประกอบของ Docker สำหรับ MariaDB

 docker run -d --name mariadb-wp -p 3306:3306 -v '/path/on/host/:/var/lib/mysql' -e "MARIADB_ROOT_PASSWORD=" -e "MARIADB_DATABASE=wordpress" -e "MARIADB_USER=wordpress" -e "MARIADB_PASSWORD=" mariadb

คำสั่งด้านบนกำหนดค่ารหัสผ่านรูทของ MariaDB ผู้ใช้ฐานข้อมูล และรหัสผ่านที่เกี่ยวข้อง จากนั้นรัน MariaDB บนพอร์ต 3306 คุณสามารถตัดสินใจหยุดการทำงานของแอปพลิเคชันคอนเทนเนอร์ชั่วคราวโดยใช้คำสั่งต่อไปนี้:

 docker pause mariadb-wp

สุดท้าย คุณยังสามารถหยุดแอปพลิเคชันที่ทำงานอยู่ภายในคอนเทนเนอร์ได้โดยใช้คำสั่งต่อไปนี้:

 docker stop mariadb-wp

5. เชื่อมต่อ MariaDB Containerized กับไซต์ WordPress

ตอนนี้ เราต้องเชื่อมต่อ MariaDB กับเว็บไซต์ WordPress ภายนอก คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการสร้างเว็บไซต์ WordPress ภายในเครื่องได้ที่นี่

ในไดเรกทอรีรากของเว็บไซต์ WordPress ให้เปิด ไฟล์ wp-config.php ในตัวแก้ไขโค้ดของคุณ ค้นหาส่วนรหัสที่กำหนดตัวแปรสำหรับฐานข้อมูลและแก้ไขดังที่แสดงด้านล่าง ตรวจสอบให้แน่ใจว่าคุณใช้ชื่อฐานข้อมูล รหัสผ่าน และหมายเลขพอร์ตเมื่อสร้างคอนเทนเนอร์ MariaDB

 define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'http://localhost:3306');

ถัดไป คุณต้องนำเข้าดัมพ์ฐานข้อมูลของเว็บไซต์ WordPress ของคุณไปยัง MariaDB ที่มีคอนเทนเนอร์ ขั้นแรก ตรวจสอบให้แน่ใจว่าคุณได้ส่งออกฐานข้อมูลปัจจุบันสำหรับเว็บไซต์แล้ว หากต้องการเรียนรู้เพิ่มเติม โปรดดูบทแนะนำการสำรองฐานข้อมูล MySQL ของเรา

หลังจากส่งออกฐานข้อมูลของคุณแล้ว ให้ติดตั้งดัมพ์ฐานข้อมูลภายในคอนเทนเนอร์

 docker exec -i mariadb-wp sh -c 'exec mysql -u root -p "$MARIADB_ROOT_PASSWORD" < /some/path/on/your/host/all-databases.sql'

คำสั่ง docker exec ช่วยให้นักพัฒนาสามารถรันคำสั่งเชลล์ภายในคอนเทนเนอร์ได้ เรานำเข้าฐานข้อมูลไปยัง MariaDB โดยใช้ไฟล์ที่ส่งออกในคำสั่งด้านบน

6. เพิ่มโพสต์ใหม่บนเว็บไซต์ WordPress ของคุณ

เราจะสร้างโพสต์ตัวอย่างโดยใช้บัญชีผู้ดูแลระบบ WordPress เพื่อทดสอบการรวมนี้

ขั้นแรก เข้าสู่ระบบ WordPress แล้วคลิก โพสต์ > เพิ่มใหม่ กรอกรายละเอียดตามที่แสดงด้านล่าง จากนั้นคลิก เผยแพร่ หลังจากสร้างโพสต์แล้ว ให้คลิก ดูโพสต์ เพื่อดูโพสต์ที่เพิ่มใหม่

การเพิ่มโพสต์ใหม่ในตัวแก้ไข WordPress Gutenberg
การเพิ่มโพสต์ใหม่ในตัวแก้ไข WordPress

และนั่นคือทั้งหมดที่มี!

7. MariaDB และ Docker กับ DevKinsta

แอปพลิเคชันฟรีของ Kinsta คือ DevKinsta ช่วยให้นักพัฒนาสามารถสร้างไซต์ WordPress ที่มีคอนเทนเนอร์ได้อย่างมีประสิทธิภาพ แอปนี้ใช้ Docker เพื่อกำหนดค่าเวอร์ชัน PHP เซิร์ฟเวอร์ฐานข้อมูล และเว็บเซิร์ฟเวอร์ แอพ DevKinsta รองรับนักพัฒนาที่ใช้ macOS, Windows และ Ubuntu/Linux

ในการเริ่มต้น ให้ดาวน์โหลด ติดตั้ง และเปิดใช้ DevKinsta บนเครื่องของคุณ แอปนี้มีตัวเลือกให้คุณสามตัวเลือก: สร้างไซต์ WordPress ใหม่ นำเข้าไซต์ที่มีอยู่จาก Kinsta หรือสร้างไซต์ที่กำหนดเอง

หน้าจอสร้างเว็บไซต์ใหม่ของ DevKinsta
หน้าจอสร้างเว็บไซต์ใหม่ของ DevKinsta

การสร้างไซต์ WordPress ใหม่ทำได้ง่ายเพียงแค่กรอกแบบฟอร์มง่ายๆ แล้วคลิก สร้างไซต์

หน้าจอการสร้างไซต์ WordPress ใหม่ของ DevKinsta
หน้าจอการสร้างไซต์ WordPress ใหม่ของ DevKinsta

ขอแสดงความยินดี คุณได้สร้างเว็บไซต์ WordPress ที่มีคอนเทนเนอร์โดยใช้ DevKinsta แล้ว!

สรุป

Docker เป็นเครื่องมือที่เป็นมิตรกับนักพัฒนาสำหรับคอนเทนเนอร์ซอฟต์แวร์ที่รันเซิร์ฟเวอร์ฐานข้อมูล เช่น MariaDB สภาพแวดล้อมที่เรียบง่ายช่วยรักษาประสิทธิภาพของทรัพยากรระบบโดยไม่สูญเสียฟังก์ชันการทำงาน

บทช่วยสอนนี้สอนวิธีติดตั้ง Docker, ตั้งค่า MariaDB และเชื่อมต่อไซต์ WordPress กับฐานข้อมูล MariaDB ที่มีคอนเทนเนอร์ของคุณ นอกจากนี้ คุณได้เรียนรู้วิธีใช้ DevKinsta เพื่อสร้างเว็บไซต์ WordPress ที่มีคอนเทนเนอร์เต็มรูปแบบ

มีอีกมากมายให้สำรวจด้วยการสร้างไซต์ WordPress และโซลูชันโฮสติ้งมากมาย หากคุณต้องการค้นหาว่าการจัดการไซต์ของคุณทำได้ง่ายเพียงใด โฮสติ้ง WordPress ที่มีการจัดการของ Kinsta ช่วยคุณได้