当前位置:   article > 正文

Docker: 使用容器化数据库

Docker: 使用容器化数据库

使用容器化数据库

使用本地容器化数据库提供了灵活性和简易的设置,使您能够在不需要传统数据库安装开销的情况下,紧密模拟生产环境。Docker 简化了这一过程,只需几条命令就可以在隔离的容器中部署、管理和扩展数据库。

在本指南中,您将学习如何:

  • 运行本地容器化数据库
  • 访问容器化数据库的 shell
  • 从主机连接到容器化数据库
  • 从另一个容器连接到容器化数据库
  • 将数据库数据保存在卷中
  • 构建自定义的数据库镜像
  • 使用 Docker Compose 运行数据库

本指南使用 MySQL 镜像作为示例,但这些概念同样适用于其他数据库镜像。

先决条件

要按照本指南进行操作,您必须安装 Docker。要安装 Docker,请参阅 Get Docker

运行本地容器化数据库

大多数流行的数据库系统,包括 MySQL、PostgreSQL 和 MongoDB,在 Docker Hub 上都有 Docker 官方镜像。这些镜像是一组经过精心策划的镜像,遵循最佳实践,确保您能够访问最新的功能和安全更新。要开始使用,请访问 Docker Hub 并搜索您感兴趣的数据库。每个镜像页面提供了详细的运行容器、定制设置和配置数据库的说明。有关本指南中使用的 MySQL 镜像的更多信息,请参阅 Docker Hub MySQL 镜像页面

要运行数据库容器,您可以使用 Docker Desktop GUI 或 CLI。

使用 CLI 运行容器

在终端中运行以下命令:

docker run --name my-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE=mydb -d mysql:latest
  • 1

在此命令中:

  • --name my-mysql 为容器分配名称 my-mysql,便于引用。
  • -e MYSQL_ROOT_PASSWORD=my-secret-pw 设置 MySQL 的 root 密码为 my-secret-pw。将 my-secret-pw 替换为您选择的安全密码。
  • -e MYSQL_DATABASE=mydb 可选地创建名为 mydb 的数据库。您可以将 mydb 更改为所需的数据库名称。
  • -d 以分离模式运行容器,意味着它在后台运行。
  • mysql:latest 指定您要使用 MySQL 镜像的最新版本。

要验证容器是否正在运行,请在终端中运行 docker ps

访问容器化数据库的 shell

当您在 Docker 容器中运行数据库时,可能需要访问其 shell 以管理数据库、执行命令或执行管理任务。Docker 提供了一种简单的方法来使用 docker exec 命令实现这一点。此外,如果您更喜欢图形界面,也可以使用 Docker Desktop 的 GUI。

使用 CLI 访问 MySQL 容器的终端

要使用 CLI 访问 MySQL 容器的终端,可以使用以下 docker exec 命令:

docker exec -it my-mysql bash
  • 1

在此命令中:

  • docker exec 告诉 Docker 您希望在正在运行的容器中执行命令。
  • -it 确保您访问的终端是交互式的,因此您可以在其中输入命令。
  • my-mysql 是您的 MySQL 容器的名称。如果在运行容器时使用了不同的名称,请使用该名称。
  • bash 是您希望在容器内运行的命令。它打开一个 bash shell,允许您与容器的文件系统和安装的应用程序进行交互。

执行此命令后,您将获得 MySQL 容器内的 bash shell 访问权限,从那里可以直接管理 MySQL 服务器。您可以运行 exit 返回终端。

一旦您访问了容器的终端,可以运行容器内的任何工具。以下示例展示了如何在容器内使用 mysql 列出数据库:

mysql -u root -p
Enter password: my-secret-pw

mysql> SHOW DATABASES;
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/783501
推荐阅读
相关标签
  

闽ICP备14008679号