当前位置: 首页 > news >正文

PostgreSQL docker compose安装配置

docker-compose.yml如下:

version: '3'services:postgres:image: postgres:15.4healthcheck:test: [ "CMD", "pg_isready", "-q", "-d", "postgres", "-U", "root" ]timeout: 45sinterval: 10sretries: 10restart: alwaysenvironment:- POSTGRES_USER=root- POSTGRES_PASSWORD=123456- APP_DB_USER=user01- APP_DB_PASS=123456- APP_DB_NAME=my_appvolumes:- ./db:/docker-entrypoint-initdb.d/- /data/postgres:/var/lib/postgresql/dataports:- 5432:5432

db\01-init.sh如下

#!/bin/bash
set -e
export PGPASSWORD=$POSTGRES_PASSWORD;
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQLCREATE USER $APP_DB_USER WITH PASSWORD '$APP_DB_PASS';CREATE DATABASE $APP_DB_NAME;GRANT ALL PRIVILEGES ON DATABASE $APP_DB_NAME TO $APP_DB_USER;\connect $APP_DB_NAME $APP_DB_USERBEGIN;CREATE TABLE IF NOT EXISTS event (id CHAR(26) NOT NULL CHECK (CHAR_LENGTH(id) = 26) PRIMARY KEY,aggregate_id CHAR(26) NOT NULL CHECK (CHAR_LENGTH(aggregate_id) = 26),event_data JSON NOT NULL,version INT,UNIQUE(aggregate_id, version));CREATE INDEX idx_event_aggregate_id ON event (aggregate_id);COMMIT;
EOSQL
http://www.lryc.cn/news/163502.html

相关文章:

  • 电脑文件批量重命名:高效操作技巧
  • c高级day4(shell)
  • 整十粉丝庆祝文章系列内容征集建议
  • 两数乘积:输出1~100整数乱序列表中两数乘积是目标整数的最小下标对
  • 【JavaSE】面试01
  • Elasticsearch(二)kibana数据检索
  • JavaScript编程语法作业
  • 服务器中了Malloxx勒索病毒应该怎么办?勒索病毒解密,数据恢复
  • 如何实现Spring的事务管理功能:@Transactional声明式事务
  • LeetCode(力扣)122. 买卖股票的最佳时机 II
  • 串行通信协议
  • Elasticsearch中RestClient使用
  • 【LeetCode-中等题】208. 实现 Trie (前缀树)
  • python队列与多线程——生产者消费者模型
  • idea的安装
  • Unity下如何实现RTMP或RTSP播放端录像?
  • 【Python】Python基础语法
  • I2C总线驱动:裸机版、应用层的使用、二级外设驱动三种方法
  • Unix Network Programming Episode 77
  • 解决Ubuntu无法安装pycairo和PyGObject
  • Android Handler 机制解析
  • 酒店固定资产管理怎么分类
  • OpenCV(三十一):形态学操作
  • Python之面向对象(二)
  • ESP32用作经典蓝牙串口透传模块与手机进行串口通信
  • Python 操作 CSV
  • 自动化运维工具Ansible教程(二)【进阶篇】
  • 嵌入式Linux基础学习笔记目录
  • JVM | 垃圾回收器(GC)- Java内存管理的守护者
  • yolov5添加ECA注意力机制