3.5. 数据库配置

本节论述了可用于 Red Hat Quay 部署的数据库配置字段。

3.5.1. 数据库 URI

在 Red Hat Quay 中,使用所需的 DB_URI 字段配置与数据库的连接。

下表描述了 DB_URI 配置字段:

表 3.2. 数据库 URI

字段类型描述

DB_URI
(Required)

字符串

用于访问数据库的 URI,包括任何凭据。

DB_URI 字段示例:

postgresql://quayuser:quaypass@quay-server.example.com:5432/quay

3.5.2. 数据库连接参数

可选的连接参数由 DB_CONNECTION_ARGS 参数配置。DB_CONNECTION_ARGS 下定义的一些键值对是通用的,另一些则特定于数据库。

下表描述了数据库连接参数:

表 3.3. 数据库连接参数

字段类型描述

DB_CONNECTION_ARGS

对象

数据库的可选连接参数,如超时和 SSL/TLS。

.autorollback

布尔值

是否使用线程本地连接。
应该始终为 true

.threadlocals

布尔值

是否使用自动回滚连接。
应该始终为 true

3.5.2.1. PostgreSQL SSL/TLS 连接参数

使用 SSL/TLS 时,配置取决于您部署的数据库。以下示例显示了 PostgreSQL SSL/TLS 配置:

DB_CONNECTION_ARGS:
  sslmode: verify-ca
  sslrootcert: /path/to/cacert

sslmode 选项决定是否与服务器协商安全 SSL/TLS TCP/IP 连接的优先级。有六个模式:

表 3.4. SSL/TLS 选项

模式描述

disable

您的配置只尝试非 SSL/TLS 连接。

allow

您的配置首先尝试非 SSL/TLS 连接。失败时,尝试 SSL/TLS 连接。

首选
(默认)

您的配置首先尝试 SSL/TLS 连接。失败时,尝试非 SSL/TLS 连接。

require

您的配置只尝试 SSL/TLS 连接。如果存在 root CA 文件,它会像指定 verify-ca 一样验证证书。

verify-ca

您的配置只尝试 SSL/TLS 连接,并验证服务器证书是否由可信证书颁发机构(CA)发布。

verify-full

仅尝试 SSL/TLS 连接,并验证服务器证书是否由可信 CA 发布,并且请求的服务器的主机名是否与证书中的匹配。

如需有关 PostgreSQL 有效参数的更多信息,请参阅 数据库连接控制功能

3.5.2.2. MySQL SSL/TLS 连接参数

以下示例显示了 MySQL SSL/TLS 配置示例:

DB_CONNECTION_ARGS:
  ssl:
    ca: /path/to/cacert

有关 MySQL 的有效连接参数的信息,请访问 使用类似URI的字符串或键-值对连接到服务器