AlloyDB Omni是一款可下载的数据库软件包,允许在自有计算环境中部署精简版的AlloyDB for PostgreSQL。它100%兼容PostgreSQL应用和工具,同时为OLTP和OLAP工作负载提供更高性能,并通过多种自动管理功能简化管理。AlloyDB AI提供强大工具,支持在数据库中创建、存储和索引向量嵌入,助力构建生成式AI应用。其便携性使其可在数据中心、笔记本电脑、云虚拟机实例等多种环境中运行。
amd64arm64v8(预览版,不推荐用于生产环境)AlloyDB Omni是免费下载的PostgreSQL兼容数据库软件,可免费用于开发、评估和非商业用途,具体定义见许可条款。
如需在生产环境部署AlloyDB Omni,请参考生产部署文档。
AlloyDB Omni适用于以下场景:
若需升级至AlloyDB的全托管扩展、安全和可用性功能,可将AlloyDB Omni数据迁移至AlloyDB集群,如同其他初始数据导入操作。详情请参考***文档。
使用以下命令启动AlloyDB Omni容器实例:
console$ docker run --name my-omni -e POSTGRES_PASSWORD=mysecretpassword -d google/alloydbomni
默认情况下,entrypoint会通过initdb创建postgres用户和数据库。上述命令将密码设置为mysecretpassword,实际使用时请选择安全密码。
通过docker exec在容器内使用psql连接到AlloyDB Omni实例:
console$ docker exec -it my-omni psql -U postgres psql (15.5) Type "help" for help. postgres=# SELECT 1; ?column? ---------- 1 (1 row)
PostgreSQL镜像使用多个环境变量,其中仅POSTGRES_PASSWORD为必填项,其余为可选项。
注意:Docker特定变量仅在容器启动时数据目录为空的情况下生效;容器启动时若数据目录已存在数据库,则不会修改现有数据库。
POSTGRES_PASSWORD(必填)使用PostgreSQL镜像时此环境变量为必填项,不能为空或未定义。它设置PostgreSQL超级用户密码,默认超级用户由POSTGRES_USER环境变量定义。
注意1:PostgreSQL镜像在本地设置了trust认证,因此从localhost(同一容器内)连接时可能无需密码,但从其他主机/容器连接时需要密码。
注意2:此变量定义PostgreSQL实例中的超级用户密码,由初始容器启动期间的initdb脚本设置;与psql客户端可能使用的PGPASSWORD环境变量无关(详见PostgreSQL文档)。
POSTGRES_USER(可选)可选环境变量,与POSTGRES_PASSWORD一起用于设置用户及其密码。此变量将创建具有超级用户权限的指定用户,并创建同名数据库。若未指定,默认使用postgres用户。
POSTGRES_DB(可选)可选环境变量,用于定义镜像首次启动时创建的默认数据库名称。若未指定,将使用POSTGRES_USER的值。
POSTGRES_INITDB_ARGS(可选)可选环境变量,用于向initdb传递参数。值为空格分隔的参数字符串,如添加数据页校验和:-e POSTGRES_INITDB_ARGS="--data-checksums"。
POSTGRES_INITDB_WALDIR(可选)可选环境变量,用于定义AlloyDB Omni事务日志的另一个位置。默认情况下,事务日志存储在主数据文件夹(PGDATA)的子目录中。有时可能需要将事务日志存储在具有不同性能或可靠性特征的存储上。
POSTGRES_HOST_AUTH_METHOD(可选)可选变量,用于控制所有数据库、所有用户、所有地址的host连接的auth-method。若未指定,14+版本使用scram-sha-256密码认证(旧版本使用md5)。在未初始化的数据库上,会通过以下行填充pg_hba.conf:
echo "host all all all $POSTGRES_HOST_AUTH_METHOD" >> pg_hba.conf
更多信息见pg_hba.conf文档。
PGDATA(可选)重要提示:当挂载卷到
/var/lib/postgresql时,/var/lib/postgresql/data路径是容器运行时的本地卷,因此数据不会持久化到挂载的卷上。
可选变量,用于定义数据库文件的其他位置(如子目录)。默认值为/var/lib/postgresql/data。若使用的是文件系统挂载点(如GCE持久磁盘)、无法将所有权改为postgres用户的远程文件夹(如某些NFS挂载),或包含文件夹/文件(如lost+found),Postgres initdb需要在挂载点内创建子目录来存储数据。
示例:
console$ docker run -d \ --name some-postgres \ -e POSTGRES_PASSWORD=mysecretpassword \ -e PGDATA=/var/lib/postgresql/data/pgdata \ -v /custom/mount:/var/lib/postgresql/data \ google/alloydbomni
使用上述命令时,请将/custom/mount/替换为实际的挂载点。
上述说明改编自PostgreSQL***镜像的说明,因为AlloyDB Omni与PostgreSQL兼容。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429