通过Docker部署运行MariaDB数据库

通过Docker部署运行MariaDB数据库

MariaDB是一个免费的数据库服务器,使用结构化查询语言(SQL)提供数据访问。它提供了密码、基于角色的访问控制等安全功能来保护你的数据。

为了部署MariaDB并向用户授予数据访问权,你需要托管数据库服务器。你可以选择云供应商或使用托管或共享主机服务。

本文将教你如何使用Docker容器运行MariaDB,配置和运行数据库服务器,并将其连接到WordPress网站。

  1. 什么是Docker?
  2. 如何使用Docker部署MariaDB
  3. 在你的WordPress网站上添加一个新的文章
  4. 通过DevKinsta管理MariaDB和Docker

什么是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

添加Docker的GPG密钥

接下来,添加Docker的GPG密钥

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

如果你使用的是不同的Linux发行版,如Debian或Fedora,请遵循在Linux中安装Docker的官方文档。

Windows 10/11

Docker可以在Windows 10或11上使用Windows Subsystem for Linux版本2(WSL 2)作为后端。使用以下步骤来安装Docker。

首先,在你的Windows系统上启用虚拟机平台功能。这使你能够安装WSL 2,并在你的Windows机器上安装和运行一个虚拟化的Linux实例。

接下来,安装WSL

然后,访问微软商店,下载Ubuntu 20.04。

最后,下载Docker Desktop for Windows。打开下载的文件,启动安装过程。

安装完成后,从你的任务栏中搜索 “Docker Desktop “并打开它。

(注意:你需要使用PowerShell作为你的终端来使用Docker命令。)

macOS X

Docker可以通过苹果应用商店在macOS机器上使用。有两种针对英特尔苹果芯片的安装程序可用。

首先,从上面的一个链接中下载相应的安装程序。然后,双击以打开下载的.dmg文件。

接下来,将Docker图标拖放到应用程序文件夹中。

现在,从应用程序文件夹中打开Docker应用程序,按照提示完成配置。

一旦安装过程完成,双击桌面状态栏中的Docker图标,即可打开它。

使用默认的终端来运行Docker命令。

2. 下载MariaDB镜像

Docker镜像提供了一个命令和配置的集合,以创建一个Docker容器。它负责安装运行一个应用程序所需的一切。你可以从Docker Hub找到MariaDB的官方镜像。

要从Docker Hub下载MariaDB的镜像,你需要使用 docker pull 命令。

docker pull mariadb

你也可以通过运行以下内容查看已下载的Docker镜像的列表。

docker images

这是命令的输出。

列出Docker镜像

列出Docker镜像

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的根密码、数据库用户和相关密码。然后它在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。

在你的WordPress网站上添加一个新的文章

我们将使用WordPress管理账户创建一个样本文章来测试这个集成。

首先,登录WordPress,点击文章>写文章。如下面所示,填写细节,然后点击发布。创建文章后,点击查看文章,查看新添加的文章。

在WordPress编辑器中添加一个新的文章

在WordPress编辑器中添加一个新的文章

这就是它的全部内容!

通过DevKinsta管理MariaDB和Docker

Kinsta的免费应用程序DevKinsta使开发者能够有效地创建容器化的WordPress网站。该应用使用Docker来配置PHP版本、数据库服务器和Web服务器。DevKinsta应用支持使用macOS、Windows和Ubuntu/Linux的开发者。

要开始使用,请在你的本地机器上下载、安装并启动DevKinsta。该应用程序为你提供三个选项:创建一个新的WordPress网站,从Kinsta导入一个现有的网站,或创建一个自定义网站。

使用DevKinsta创建新网站

使用DevKinsta创建新网站

创建一个新的WordPress网站就像填写一个简单的表格并点击创建网站一样容易。

DevKinsta的新WordPress网站创建界面

DevKinsta的新WordPress网站创建界面

恭喜你 – 你现在已经使用DevKinsta创建了一个容器化的WordPress网站。

小结

Docker是一个对开发者友好的工具,用于将运行MariaDB等数据库服务器的软件容器化。它的最小化环境有助于保持系统资源的效率而不牺牲功能。

本教程教你如何安装Docker,设置MariaDB,并将WordPress网站与容器化的MariaDB数据库相连。另外,你还学会了如何使用DevKinsta来创建一个完全容器化的WordPress网站。

对于WordPress网站的创建及其众多的托管解决方案,还有很多东西可以探索。如果你想发现你的网站管理可以如此简单,Kinsta的管理型WordPress主机可以满足你的要求。

评论留言