尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

完整教程:docker创建postgreSql带多个init的sql

完整教程:docker创建postgreSql带多个init的sql
📅 发布时间:2026/6/19 23:25:05

好的!下面是一个完整的可运行项目结构,包含:

  • ✅ docker-compose.yml:启动 PostgreSQL(支持 pgvector)

  • ✅ init-db.sql:创建数据库myapp

  • ✅ init-schema.sql:在 myapp 中建表并初始化数据

  • ✅ 自动执行顺序正确,无需手动干预


? 项目结构

your-project/├── docker-compose.yml├── init-db.sql├── init-schema.sql└── data/                <-- 容器初始化后生成(不要提前创建)

? 1. docker-compose.yml

version: "3.8" services:  postgres:    image: pgvector/pgvector:pg16    container_name: my-postgres    environment:      POSTGRES_PASSWORD: root    ports:      - "5432:5432"    volumes:      - ./data:/var/lib/postgresql/data      - ./init-db.sql:/docker-entrypoint-initdb.d/01-init-db.sql      - ./init-schema.sql:/docker-entrypoint-initdb.d/02-init-schema.sql    restart: always

? 2. init-db.sql

-- 创建数据库 myapp CREATE DATABASE myapp;

? 3. init-schema.sql

-- 切换到 myapp 数据库\connect myapp -- 创建用户表CREATE TABLE users (  id SERIAL PRIMARY KEY,  name TEXT NOT NULL,  email TEXT UNIQUE NOT NULL,  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP); -- 插入测试数据INSERT INTO users (name, email) VALUES('Alice', 'alice@example.com'),('Bob', 'bob@example.com');

✅ 启动项目

确保当前目录下没有已有 data/ 文件夹(PostgreSQL 启动时需要创建空数据库)

docker-compose down -v     # 清除旧容器和卷(第一次运行推荐)rm -rf ./data              # 删除旧数据目录,确保执行初始化脚本docker-compose up -d       # 启动容器


? 验证

登录数据库检查数据是否已插入: docker exec -it my-postgres psql -U postgres -d myapp 然后执行: \d -- 查看表 SELECT * FROM users;

相关新闻

  • vscode的文心快码插件不错
  • 股市技术分析突破
  • 34.1STM32下的can总线实现知识(区分linux)_csdn - 详解

最新新闻

  • TPA3255 Class D功放实战:从选型到调音的全链路设计指南
  • PingFangSC字体解决方案:跨平台中文显示一致性技术实现
  • KETTLE日志记录、任务巡检、邮件发送
  • FluentTerminal全屏模式技术深度解析:沉浸式终端体验的架构实现
  • 3.gemini336相机在ubuntu22.04的ros2下运行
  • 成本不到 5000 欧元!Matthias Plappert 公开在办公桌旁搭建机器人研究装置的研究过程

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号