包含您的數據:使用 Docker 運行 MariaDB
已發表: 2022-10-25MariaDB 是一個免費的數據庫服務器,它使用結構化查詢語言 (SQL) 提供數據訪問。 它提供密碼、基於角色的訪問控制等安全功能,以保護您的數據。
要部署 MariaDB 並向您的用戶授予數據訪問權限,您需要託管數據庫服務器。 您可以選擇雲提供商或使用託管或共享託管服務。
本文將教您如何使用 Docker 容器運行 MariaDB,配置和運行數據庫服務器,並將其連接到 WordPress 網站。
什麼是 Docker?
Docker 是一種免費的開發人員工具,使您能夠在稱為容器的受控環境中運行應用程序。 容器具有運行應用程序的應用程序代碼、依賴項和關鍵系統工具。 這使您能夠在整個軟件開發生命週期中交付強大的應用程序。
通常,容器使用您的操作系統作為主機。 這意味著主機的內核提供對 CPU、內存和文件系統等資源的訪問。 因此,這不需要像虛擬機這樣的傳統虛擬化。 使用 Docker 運行 MariaDB 實例有幾個優點:
- 它的數字足跡很小,可確保有效利用系統資源。
- 它是一致的,允許開發人員以最小的更改在生產和測試部署中運行應用程序。
- 它提供了一種靈活的資源共享機制。
- 它是可擴展的——你可以在一個主機上運行許多容器。
如何使用 Docker 部署 MariaDB
在本節中,您將創建容器化環境以使用 Docker 運行 MariaDB。 您將了解 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
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 引擎。
sudo apt-get install docker-ce
如果您使用的是 Debian 或 Fedora 等不同的 Linux 發行版,請遵循在 Linux 中安裝 Docker 的官方文檔。
視窗 10/11
Docker 可在 Windows 10 或 11 上使用 Windows Subsystem for Linux version 2 (WSL 2) 作為後端。 使用以下步驟安裝 Docker。
首先,在您的 Windows 系統上啟用虛擬機平台功能。 這使您能夠安裝 WSL 2 並在 Windows 機器上安裝和運行虛擬化 Linux 實例。
接下來,安裝 WSL。
然後,訪問 Microsoft Store 下載 Ubuntu 20.04。
最後,下載適用於 Windows 的 Docker Desktop。 打開下載的文件以啟動安裝過程。
安裝完成後,從任務欄中搜索“Docker Desktop”並打開它。
(注意:您需要使用 PowerShell 作為終端才能使用 Docker 命令。)
macOS X
Docker 可通過 Apple App Store 在 macOS 機器上使用。 有兩個針對英特爾和蘋果芯片的安裝程序可用。
首先,從上述鏈接之一下載適當的安裝程序。 然後,雙擊打開下載的.dmg文件。
接下來,將 Docker 圖標拖放到Applications文件夾中。
現在,從Applications文件夾中打開 Docker 應用程序並按照提示完成配置。
安裝過程完成後,雙擊桌面狀態欄中的 Docker 圖標將其打開。
使用默認終端運行 Docker 命令。
2. 下載 MariaDB 鏡像
Docker 映像提供了一組命令和配置來創建 Docker 容器。 它負責安裝運行應用程序所需的一切。 您可以從 Docker Hub 中找到 MariaDB 官方鏡像。
要從 Docker Hub 下載 MariaDB 的鏡像,您需要使用docker pull
命令:

docker pull mariadb
您還可以通過運行以下命令查看下載的 Docker 映像列表:
docker images
這是命令輸出:
3.創建一個容器
容器是一個軟件單元,包含運行進程或程序所需的所有代碼、依賴項和系統工具。 您將使用之前下載的圖像來創建 MariaDB 容器。
docker create mariadb --name mariadb-wp -i –t
這將創建一個名為mariadb-wp
的 MariaDB 容器。 –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 的 root 密碼、數據庫用戶和相關密碼。 然後它在端口 3306 上運行 MariaDB。您可以使用以下命令決定暫停容器的應用程序運行:
docker pause mariadb-wp
最後,您還可以使用以下命令停止在容器內運行的應用程序:
docker stop mariadb-wp
5. 將容器化 MariaDB 連接到 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
命令允許開發人員在容器內運行 shell 命令。 我們使用上述命令中的導出文件將數據庫導入 MariaDB。
6. 向您的 WordPress 網站添加新帖子
我們將使用 WordPress 管理員帳戶創建一個示例帖子來測試此集成。
首先,登錄 WordPress 並單擊帖子>添加新的。 如下所示填寫詳細信息,然後單擊Publish 。 創建帖子後,點擊查看帖子即可查看新添加的帖子。
這就是它的全部!
7. 使用 DevKinsta 的 MariaDB 和 Docker
Kinsta 的免費應用程序 DevKinsta 使開發人員能夠有效地創建容器化 WordPress 網站。 該應用程序使用 Docker 來配置 PHP 版本、數據庫服務器和 Web 服務器。 DevKinsta 應用程序支持使用 macOS、Windows 和 Ubuntu/Linux 的開發人員。
要開始使用,請在本地計算機上下載、安裝和啟動 DevKinsta。 該應用程序為您提供三個選項:創建一個新的 WordPress 站點,從 Kinsta 導入現有站點,或創建一個自定義站點。
創建一個新的 WordPress 站點就像填寫一個簡單的表格並單擊創建站點一樣簡單。
恭喜——您現在已經使用 DevKinsta 創建了一個容器化的 WordPress 網站!
概括
Docker 是一個對開發人員友好的工具,用於將運行 MariaDB 等數據庫服務器的軟件容器化。 其簡約的環境有助於在不犧牲功能的情況下保持系統資源的效率。
本教程教您如何安裝 Docker、設置 MariaDB 以及將 WordPress 站點與您的容器化 MariaDB 數據庫連接。 此外,您還學習瞭如何使用 DevKinsta 創建一個完全容器化的 WordPress 網站。
WordPress 網站創建及其眾多託管解決方案還有很多值得探索的地方。 如果您想了解您的網站管理是多麼容易,Kinsta 的託管 WordPress 主機可以滿足您的需求。