赞
踩
使用本地容器化数据库提供了灵活性和简易的设置,使您能够在不需要传统数据库安装开销的情况下,紧密模拟生产环境。Docker 简化了这一过程,只需几条命令就可以在隔离的容器中部署、管理和扩展数据库。
在本指南中,您将学习如何:
本指南使用 MySQL 镜像作为示例,但这些概念同样适用于其他数据库镜像。
要按照本指南进行操作,您必须安装 Docker。要安装 Docker,请参阅 Get Docker。
大多数流行的数据库系统,包括 MySQL、PostgreSQL 和 MongoDB,在 Docker Hub 上都有 Docker 官方镜像。这些镜像是一组经过精心策划的镜像,遵循最佳实践,确保您能够访问最新的功能和安全更新。要开始使用,请访问 Docker Hub 并搜索您感兴趣的数据库。每个镜像页面提供了详细的运行容器、定制设置和配置数据库的说明。有关本指南中使用的 MySQL 镜像的更多信息,请参阅 Docker Hub MySQL 镜像页面。
要运行数据库容器,您可以使用 Docker Desktop GUI 或 CLI。
在终端中运行以下命令:
docker run --name my-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE=mydb -d mysql:latest
在此命令中:
--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
。
当您在 Docker 容器中运行数据库时,可能需要访问其 shell 以管理数据库、执行命令或执行管理任务。Docker 提供了一种简单的方法来使用 docker exec
命令实现这一点。此外,如果您更喜欢图形界面,也可以使用 Docker Desktop 的 GUI。
要使用 CLI 访问 MySQL 容器的终端,可以使用以下 docker exec
命令:
docker exec -it my-mysql bash
在此命令中:
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;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。