2.4. 最小配置
独立部署 Red Hat Quay 需要以下配置选项:
- 服务器主机名
- HTTP 或 HTTPS
- 身份验证类型,如 Database 或轻量级目录访问协议(LDAP)
- 用于加密数据的 secret 密钥
- 镜像存储
- 元数据的数据库
- 用于构建日志和用户事件的 Redis
- 标签过期选项
2.4.1. 最小配置文件示例
以下示例显示了将本地存储用于镜像的最小配置文件示例:
AUTHENTICATION_TYPE: Database BUILDLOGS_REDIS: host: quay-server.example.com password: strongpassword port: 6379 ssl: false DATABASE_SECRET_KEY: 0ce4f796-c295-415b-bf9d-b315114704b8 DB_URI: postgresql://quayuser:quaypass@quay-server.example.com:5432/quay DEFAULT_TAG_EXPIRATION: 2w DISTRIBUTED_STORAGE_CONFIG: default: - LocalStorage - storage_path: /datastorage/registry DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: [] DISTRIBUTED_STORAGE_PREFERENCE: - default PREFERRED_URL_SCHEME: http SECRET_KEY: e8f9fe68-1f84-48a8-a05f-02d72e6eccba SERVER_HOSTNAME: quay-server.example.com SETUP_COMPLETE: true TAG_EXPIRATION_OPTIONS: - 0s - 1d - 1w - 2w - 4w - 3y USER_EVENTS_REDIS: host: quay-server.example.com port: 6379 ssl: false
2.4.2. 本地存储
只有在部署 registry 进行 概念验证 时,才建议在镜像中使用本地存储。
在配置本地存储时,存储会在启动 registry 时在命令行中指定。
以下命令将本地目录 $QUAY/storage
映射到容器中的 datastorage
路径:
$ sudo podman run -d --rm -p 80:8080 -p 443:8443 \ --name=quay \ -v $QUAY/config:/conf/stack:Z \ -v $QUAY/storage:/datastorage:Z \ registry.redhat.io/quay/quay-rhel8:v3.12.4
2.4.3. 云存储
存储配置在镜像存储部分中详细介绍。对于某些用户,比较 Google Cloud Platform 和本地存储配置之间的区别可能很有用。例如,以下 YAML 提供了 Google Cloud Platform 存储配置:
$QUAY/config/config.yaml
DISTRIBUTED_STORAGE_CONFIG:
default:
- GoogleCloudStorage
- access_key: GOOGQIMFB3ABCDEFGHIJKLMN
bucket_name: quay_bucket
secret_key: FhDAYe2HeuAKfvZCAGyOioNaaRABCDEFGHIJKLMN
storage_path: /datastorage/registry
boto_timeout: 120 1
DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: []
DISTRIBUTED_STORAGE_PREFERENCE:
- default
- 1
- 可选。从连接时抛出超时异常的时间(以秒为单位)。默认值为
60
秒。另外,还包括时间(以秒为单位),直到尝试进行连接时抛出超时异常。默认值为60
秒。
使用云存储启动 registry 时,在命令行中不需要配置。例如:
$ sudo podman run -d --rm -p 80:8080 -p 443:8443 \ --name=quay \ -v $QUAY/config:/conf/stack:Z \ registry.redhat.io/quay/quay-rhel8:v3.12.4