postgresql创建数据库

一 . 创建 Dockerfile 文件(~/docker/Dockerfile)

# FROM postgres:9.3-alpine
FROM library/postgres
ENV POSTGRES_USER docker
ENV POSTGRES_PASSWORD docker
ENV POSTGRES_DB docker

二. 生成镜像

# dockerfile所在目录
docker build -t postgres:v1 .

三. 启动服务(通过docker-compos)

  • postgres.yaml文件(~/docker/postgres.yaml)
version: '2'
services:
  postgres:
    container_name: bcap-postgres
    image: postgres:v1
    restart: always
    ports:
      - 5432:5432
    environment:
      - GODEBUG=netdns=go
      - POSTGRES_USER=docker
      - POSTGRES_PASSWORD=docker
    volumes:
      - ./data/postgres:/var/lib/postgresql/data
  • 使用docker-compos启动
docker-compos -f postgres.yaml up -d 

四.客户端验证

psql -h localhost -U docker -d docker 
# 之后输入密码: docker

五.显示效果

《postgresql创建数据库》 101534764988_.pic_hd.jpg

—————–华丽的分割线———————————-华丽的分割线—————–

后记使用脚本登录并添加数据库()

pgpass_file="~/.pgpass"
pass="$1"
db="$2"

# 创建.pgpass文件
createPgpass(){
if [ ! -f "$pgpass_file" ]; then
echo "localhost:5432:postgres:postgres:$pass" > ~/.pgpass
chmod 0600 ~/.pgpass
fi
}
# 创建数据库
createDB(){
Msg=$(psql -h localhost -U postgres -p 5432 -d postgres --command="CREATE DATABASE $db")
echo "$Msg"
}
if [ ! $2 ];then
echo "输入错误,请输入正确格式: './db.sh 密码 数据名称'"
echo "eg: ' ./db 12345678 testdb'"
else
createPgpass
createDB
fi
    原文作者:会理发的店小二
    原文地址: https://www.jianshu.com/p/4354338e6dc2
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞