PostGIS avec docker compose
Mis à jour le 10/11/2023

Le fichier .env est nécessaire pour au moins définir: POSTGRES_PASSWORD

Si le répertoire docker-entrypoint-initdb.d/ contient des scripts (.sql ou .sh, éventuellement .sql.gz), ils sont exécutés dans l’ordre alphabétique si data est vide.
:point_right: exemple de contenu de ce répertoire: docker-entrypoint-initdb.tgz

docker-compose.yaml

# Connexion au container:
# docker exec -it -u postgres postgis-postgreSQL-GIS-1 bash # ou psql

version: '3'

services:
  postgreSQL-GIS:
    image: postgis/postgis:15-3.3-alpine
    restart: "no" # pourrait être always ou unless-stopped si besoin
    environment:
      POSTGRES_PASSWORD: $POSTGRES_PASSWORD
      PAGER: less
      PGDATA: /var/lib/postgresql/data
    volumes:
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro

      - $PWD/data:/var/lib/postgresql/data

      - $PWD/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d:ro

      - $PWD/psqlrc:/var/lib/postgresql/.psqlrc
      - $PWD/bashrc:/var/lib/postgresql/.bashrc
      
    ports:
      - 127.0.0.1:5432:5432


# pour faire un script complet de bdd (avec datas et create database):
# BD=nyc; pg_dump -Fp -d $BD -C|gzip -9 >/tmp/$BD.sql.gz

bashrc

# des alias

alias du='du -h'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias less='less -I' # i majuscule dans busybox
alias ll='ls -lFh'
alias locate='locate -i'
alias ls='ls --color=auto'

# pour ce container, aller dans HOME directory
cd 

psqlrc

\x auto
\pset null 'NULL'
\echo Init File psql OK!

resetDatas.sh

#!/bin/sh
#
# SUPPRIME toutes les données/configuration existantes de ce compose postgreSQL
#

sudo rm -fR data
mkdir data

results matching ""

    No results matching ""