
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
docker-postgresql是一个封装了PostgreSQL数据库的Docker镜像,旨在简化PostgreSQL的部署和管理流程。通过容器化方式,用户可快速搭建独立的PostgreSQL数据库环境,无需手动配置系统依赖,支持跨平台运行,适用于各类开发、测试及小型生产场景。
通过以下命令快速启动一个PostgreSQL容器:
bashdocker run -d \ --name postgres-db \ -e POSTGRES_PASSWORD=mysecretpassword \ -e POSTGRES_USER=myuser \ -e POSTGRES_DB=mydb \ -p 5432:5432 \ -v postgres-data:/var/lib/postgresql/data \ docker.xuanyuan.run/postgres:latest
参数说明:
-d:后台运行容器。--name postgres-db:指定容器名称为postgres-db。-e POSTGRES_PASSWORD:设置数据库超级用户密码(必填)。-e POSTGRES_USER:指定数据库用户名(默认:postgres)。-e POSTGRES_DB:指定默认创建的数据库名(默认与POSTGRES_USER同名)。-p 5432:5432:映射容器内5432端口到主机5432端口,允许外部访问。-v postgres-data:/var/lib/postgresql/data:挂载数据卷postgres-data到容器内数据目录,实现数据持久化。创建docker-compose.yml文件,定义服务配置:
yamlversion: '3' services: postgres: image: docker.xuanyuan.run/postgres:latest container_name: postgres-db environment: POSTGRES_PASSWORD: mysecretpassword POSTGRES_USER: myuser POSTGRES_DB: mydb ports: - "5432:5432" volumes: - postgres-data:/var/lib/postgresql/data - ./init-scripts:/docker-entrypoint-initdb.d # 挂载初始化脚本目录 restart: unless-stopped volumes: postgres-data: # 声明数据卷,自动创建
启动服务:
bashdocker-compose up -d
| 环境变量 | 描述 | 默认值 |
|---|---|---|
POSTGRES_PASSWORD | 数据库超级用户密码(必填) | - |
POSTGRES_USER | 数据库用户名 | postgres |
POSTGRES_DB | 默认创建的数据库名 | 与POSTGRES_USER相同 |
POSTGRES_INITDB_ARGS | 传递给initdb命令的额外参数(如字符集、排序规则) | - |
PGDATA | 容器内数据库数据存储路径 | /var/lib/postgresql/data |
容器启动时,会自动执行/docker-entrypoint-initdb.d目录下的.sql、.sql.gz或.sh文件。可通过挂载本地脚本目录实现数据库初始化:
bashdocker run -d \ --name postgres-db \ -e POSTGRES_PASSWORD=mysecretpassword \ -v postgres-data:/var/lib/postgresql/data \ -v ./init-scripts:/docker-entrypoint-initdb.d \ # 本地脚本目录挂载 postgres:latest
使用psql客户端连接容器内数据库:
bashdocker exec -it postgres-db psql -U myuser -d mydb
或通过主机端口远程连接(需开放端口):
bashpsql -h localhost -p 5432 -U myuser -d mydb
postgres-data),避免数据丢失。postgres:14),避免因版本更新导致兼容性问题。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 wmarinho/postgresql 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: