Loading README.md +13 −6 Original line number Diff line number Diff line Loading @@ -2,9 +2,10 @@ ## Script `docker/init_user_db.sh` Ce script est monté pour être lancé automatiquement au démarrage du container pour... - créer une base de données `sygal`, - créer le user `ad_sygal`, Ce script est lancé automatiquement au démarrage du container pour... - créer une base de données dont le nom est fourni par la variable d'environnement `SYGAL_DB` ; - créer un user dont le nom est fourni par la variable d'environnement `SYGAL_USER`, et le mot de passe par la variable `SYGAL_PASSWORD` ; - lancer tous les scripts .sql présents dans le répertoire `/sql` de l'image. ## Répertoire `docker/sql` => Loading Loading @@ -44,6 +45,9 @@ Exemple : docker run \ --env POSTGRES_USER=postgres \ --env POSTGRES_PASSWORD=admin \ --env SYGAL_DB: sygal \ --env SYGAL_USER: ad_sygal \ --env SYGAL_PASSWORD: azerty \ --publish 5432:5432 \ --volume $PWD/data/db:/var/lib/postgresql/data \ --name sygal-db-container \ Loading @@ -51,7 +55,7 @@ sygal-db-image ``` Remarques : - Le montage `./data/db:/var/lib/postgresql/data` permet de persister la base de données. - Le montage `$PWD/data/db:/var/lib/postgresql/data` permet de persister la base de données. - Si vous voulez substituer les scripts SQL de création/peuplement des objets de la base de données par les vôtres, ajoutez un montage du genre `--volume $PWD/mes/scripts/sql/:/sql`. Loading @@ -67,9 +71,12 @@ services: environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: admin SYGAL_DB: sygal SYGAL_USER: ad_sygal SYGAL_PASSWORD: azerty ports: - 5432:5432 volumes: - ./data/db:/var/lib/postgresql/data - ./docker/db/sql/:/sql - ./docker/db/sql/:/sql # répertoire des scripts de création de la bdd - ./data/db:/var/lib/postgresql/data # répertoire de où la bdd est persistée ``` docker-compose.yml +5 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,11 @@ services: #POSTGRES_DB: postgres POSTGRES_USER: postgres POSTGRES_PASSWORD: admin SYGAL_DB: sygal SYGAL_USER: ad_sygal SYGAL_PASSWORD: azerty ports: - 5432:5432 volumes: - ./data/db:/var/lib/postgresql/data #- ./docker/db/sql/:/sql # répertoire des scripts de création de la bdd - ./data/db:/var/lib/postgresql/data # répertoire de où la bdd est persistée docker/init_user_db.sh +11 −7 Original line number Diff line number Diff line Loading @@ -3,6 +3,10 @@ set -e unset PGHOST PGPORT PGDATABASE PGUSER PGPASSWORD # précaution #echo "SYGAL_DB = $SYGAL_DB" #echo "SYGAL_USER = $SYGAL_USER" #echo "SYGAL_PASSWORD = $SYGAL_PASSWORD" # # Création de la base 'sygal' et du user 'ad_sygal'. # Loading @@ -11,9 +15,9 @@ export \ PGUSER=$POSTGRES_USER \ ON_ERROR_STOP=1 psql <<EOF create database sygal with ENCODING = 'UTF-8'; create user ad_sygal with encrypted password 'azerty' NOSUPERUSER NOCREATEDB; grant all privileges on database sygal to ad_sygal; create database $SYGAL_DB with ENCODING = 'UTF-8'; create user $SYGAL_USER with encrypted password '$SYGAL_PASSWORD' NOSUPERUSER NOCREATEDB; grant all privileges on database $SYGAL_DB to $SYGAL_USER; EOF # Loading @@ -21,9 +25,9 @@ EOF # NB : il est possible de substituer ces scripts par les vôtres grâce à un volume monter dans `/sql`. # export \ PGDATABASE=sygal \ PGUSER=ad_sygal \ PGPASSWORD=azerty PGDATABASE=$SYGAL_DB \ PGUSER=$SYGAL_USER \ PGPASSWORD=$SYGAL_PASSWORD psql <<EOF CREATE EXTENSION unaccent WITH SCHEMA public; COMMENT ON EXTENSION unaccent IS 'text search dictionary that removes accents'; Loading @@ -31,7 +35,7 @@ EOF # # Exécution de tous les scripts .sql présents dans le répertoire `/sql` # pour créer/peupler les objets de la base 'sygal'. # NB : il est possible de substituer ces scripts par les vôtres grâce à un volume monter dans `/sql`. # NB : il est possible de substituer ces scripts par les vôtres grâce à un volume à monter dans `/sql`. # cd /sql for f in *.sql; do Loading Loading
README.md +13 −6 Original line number Diff line number Diff line Loading @@ -2,9 +2,10 @@ ## Script `docker/init_user_db.sh` Ce script est monté pour être lancé automatiquement au démarrage du container pour... - créer une base de données `sygal`, - créer le user `ad_sygal`, Ce script est lancé automatiquement au démarrage du container pour... - créer une base de données dont le nom est fourni par la variable d'environnement `SYGAL_DB` ; - créer un user dont le nom est fourni par la variable d'environnement `SYGAL_USER`, et le mot de passe par la variable `SYGAL_PASSWORD` ; - lancer tous les scripts .sql présents dans le répertoire `/sql` de l'image. ## Répertoire `docker/sql` => Loading Loading @@ -44,6 +45,9 @@ Exemple : docker run \ --env POSTGRES_USER=postgres \ --env POSTGRES_PASSWORD=admin \ --env SYGAL_DB: sygal \ --env SYGAL_USER: ad_sygal \ --env SYGAL_PASSWORD: azerty \ --publish 5432:5432 \ --volume $PWD/data/db:/var/lib/postgresql/data \ --name sygal-db-container \ Loading @@ -51,7 +55,7 @@ sygal-db-image ``` Remarques : - Le montage `./data/db:/var/lib/postgresql/data` permet de persister la base de données. - Le montage `$PWD/data/db:/var/lib/postgresql/data` permet de persister la base de données. - Si vous voulez substituer les scripts SQL de création/peuplement des objets de la base de données par les vôtres, ajoutez un montage du genre `--volume $PWD/mes/scripts/sql/:/sql`. Loading @@ -67,9 +71,12 @@ services: environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: admin SYGAL_DB: sygal SYGAL_USER: ad_sygal SYGAL_PASSWORD: azerty ports: - 5432:5432 volumes: - ./data/db:/var/lib/postgresql/data - ./docker/db/sql/:/sql - ./docker/db/sql/:/sql # répertoire des scripts de création de la bdd - ./data/db:/var/lib/postgresql/data # répertoire de où la bdd est persistée ```
docker-compose.yml +5 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,11 @@ services: #POSTGRES_DB: postgres POSTGRES_USER: postgres POSTGRES_PASSWORD: admin SYGAL_DB: sygal SYGAL_USER: ad_sygal SYGAL_PASSWORD: azerty ports: - 5432:5432 volumes: - ./data/db:/var/lib/postgresql/data #- ./docker/db/sql/:/sql # répertoire des scripts de création de la bdd - ./data/db:/var/lib/postgresql/data # répertoire de où la bdd est persistée
docker/init_user_db.sh +11 −7 Original line number Diff line number Diff line Loading @@ -3,6 +3,10 @@ set -e unset PGHOST PGPORT PGDATABASE PGUSER PGPASSWORD # précaution #echo "SYGAL_DB = $SYGAL_DB" #echo "SYGAL_USER = $SYGAL_USER" #echo "SYGAL_PASSWORD = $SYGAL_PASSWORD" # # Création de la base 'sygal' et du user 'ad_sygal'. # Loading @@ -11,9 +15,9 @@ export \ PGUSER=$POSTGRES_USER \ ON_ERROR_STOP=1 psql <<EOF create database sygal with ENCODING = 'UTF-8'; create user ad_sygal with encrypted password 'azerty' NOSUPERUSER NOCREATEDB; grant all privileges on database sygal to ad_sygal; create database $SYGAL_DB with ENCODING = 'UTF-8'; create user $SYGAL_USER with encrypted password '$SYGAL_PASSWORD' NOSUPERUSER NOCREATEDB; grant all privileges on database $SYGAL_DB to $SYGAL_USER; EOF # Loading @@ -21,9 +25,9 @@ EOF # NB : il est possible de substituer ces scripts par les vôtres grâce à un volume monter dans `/sql`. # export \ PGDATABASE=sygal \ PGUSER=ad_sygal \ PGPASSWORD=azerty PGDATABASE=$SYGAL_DB \ PGUSER=$SYGAL_USER \ PGPASSWORD=$SYGAL_PASSWORD psql <<EOF CREATE EXTENSION unaccent WITH SCHEMA public; COMMENT ON EXTENSION unaccent IS 'text search dictionary that removes accents'; Loading @@ -31,7 +35,7 @@ EOF # # Exécution de tous les scripts .sql présents dans le répertoire `/sql` # pour créer/peupler les objets de la base 'sygal'. # NB : il est possible de substituer ces scripts par les vôtres grâce à un volume monter dans `/sql`. # NB : il est possible de substituer ces scripts par les vôtres grâce à un volume à monter dans `/sql`. # cd /sql for f in *.sql; do Loading