在 Docker 容器中运行数据库
最后修改时间:2023 年 9 月 5 日您可以使用 Docker 在容器中运行数据库,就好像它是远程服务器一样,并测试应用程序如何与其交互。本教程介绍如何使用 PostgreSQL 服务器运行 Docker 容器并使用 IntelliJ IDEA 连接到它。
笔记
在开始之前,请安装并运行 Docker,启用 Docker 插件,并连接到 IntelliJ IDEA 中的 Docker 守护程序。有关更多信息,请参阅IntelliJ IDEA 中的 Docker 入门。
有关数据库管理功能,请参阅数据库工具和 SQL。
拉取 PostgreSQL 服务器镜像
在“服务”工具窗口中,展开 Docker 连接并选择“图像”节点。
要拉取的图像在要拉取的图像字段中,开始输入
postgres
并选择必要的图像存储库。例如,选择postgres
拉取默认postgres:latest
镜像。按并等待 Docker 拉取镜像。CtrlEnter
从 PostgreSQL 服务器映像运行容器
展开Images节点,选择 PostgreSQL 服务器映像,然后单击 Create Container。
在“创建 Docker 配置”对话框中,执行以下操作:
单击“修改选项”并选择“随机发布所有暴露的端口”,将所有暴露的容器端口发布到主机接口。当然,为了更安全的设置,您需要定义特定的端口绑定。然而,在本教程中,我们假设您的本地计算机足够安全并且没有什么重要的。
单击修改选项,选择环境变量,然后配置定义 PostgreSQL 服务器身份验证设置的环境变量。出于本教程的目的,我们可以使用Trust Authentication。请记住,这将使任何可以连接到 PostgreSQL 服务器的人都可以使用他们选择的任何用户名访问数据库。在环境变量字段中,单击并添加
POSTGRES_HOST_AUTH_METHOD
值为 的变量trust
。
或者,您可以为配置和容器指定自定义名称。
连接到 PostgreSQL 服务器
Docker 会自动将容器中的默认 PostgreSQL 服务器端口 5432 映射到临时端口范围(通常为 32768 到 61000)内的主机端口。本教程假设使用端口 32768。要检查实际映射是什么,请右键单击“服务”工具窗口中“容器”节点下的 PostgreSQL 容器,单击“检查”,然后HostPort
在“检查”输出中查找该字段的值。
打开 数据库工具窗口(视图|工具窗口| 数据库)。
单击并选择数据源 | PostgreSQL。
将主机名设置为
localhost
,将端口号设置为32768
(或其映射到的任何主机端口),将默认数据库和用户设置为postgres
。trust
由于我们使用身份验证来运行 PostgreSQL 服务器,因此不需要密码。如有必要,请下载驱动程序并测试连接。
单击“确定”将 PostgreSQL 服务器添加为数据源。
有关在 IntelliJ IDEA 中使用数据库源的更多信息,请参阅数据库工具和 SQL。
感谢您的反馈意见!