在 Docker 容器中运行数据库
您可以使用 Docker 在容器中运行数据库,就像它是远程服务器一样,并测试您的应用程序如何与其交互。
在本教程中,将学习如何运行带有 PostgreSQL 服务器的 Docker 容器,并使用 IntelliJ IDEA 连接到它。
获取 PostgreSQL 服务器镜像
在 服务 工具窗口中,展开您的 Docker 连接并选择 镜像 节点。
在 要拉取的镜像 字段中,开始输入
postgres并选择所需的镜像存储库。 例如,选择postgres来提取默认postgres:latest图像。
按 Ctrl+Enter 并等待 Docker 拉取镜像。

从 PostgreSQL 服务器镜像运行容器
展开 镜像 节点,选择 PostgreSQL 服务器镜像,然后点击
创建容器。

在 创建Docker 配置 对话框中,点击 修改选项(M) 并选择 随机发布所有暴露端口 ,将所有暴露的容器端口发布到主机接口。
点击 修改选项(M) 并选择 环境变量。 在出现的 环境变量 字段中,可以为 PostgreSQL 认证配置环境变量。

点击
浏览。 在打开的 环境变量 对话框中,点击
添加 ,并添加值为
trust的POSTGRES_HOST_AUTH_METHOD变量。
在 名称 和 容器名称 字段中,为配置(例如
PostgreSQL Container)和容器(例如postgresql)指定自定义名称。
应用更改并点击 运行。
IntelliJ IDEA 会创建并启动新的 Docker 容器。 它将显示在 服务 工具窗口的 容器 节点下。

连接到 PostgreSQL 服务器
Docker 会自动将容器内的默认 PostgreSQL 服务器端口 5432 映射到 临时端口范围 (通常从 32768 到 61000)内的主机端口。 在本教程中,以端口 55000 为例。
打开 数据库 工具窗口()。
点击
新建 并选择 。
将主机名设置为
localhost,端口号设置为55000(或映射到的主机端口),默认数据库和用户设为postgres。 我们使用了trust身份验证来运行 PostgreSQL 服务器,因此不需要密码。如有必要, 下载驱动程序并测试连接。

点击 确定 以将 PostgreSQL 服务器添加为数据源。
创建的数据源会显示在 数据库 工具窗口中。 现在可以展开连接树,查看运行于 Docker 中的 PostgreSQL 服务器的数据库对象。 有关 PostgreSQL 数据库连接过程和可用选项的更多信息,请参阅 连接到 PostgreSQL 数据库。
总结
通过本教程,您已经学会了如何:
拉取和管理 Docker 镜像
通过 DBMS(如 PostgreSQL)镜像配置并运行容器
建立 IntelliJ IDEA 与容器中运行的数据库之间的连接