Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
sio:stage2:docker [27/01/2016 10:39] charly [Présentation des commandes] |
sio:stage2:docker [18/09/2016 02:54] (Version actuelle) |
||
---|---|---|---|
Ligne 165: | Ligne 165: | ||
docker run -dtiv / | docker run -dtiv / | ||
</ | </ | ||
+ | |||
+ | Ainsi que le script d' | ||
+ | < | ||
+ | #!/bin/bash | ||
+ | |||
+ | if [[ -z "$(ls -A " | ||
+ | then | ||
+ | if [ -z "$(ls -A " | ||
+ | then | ||
+ | chmod 700 $PGDATA | ||
+ | chown -R postgres $PGDATA | ||
+ | initdb | ||
+ | |||
+ | sed -i " | ||
+ | sed -i " | ||
+ | sed -i " | ||
+ | echo " | ||
+ | |||
+ | pg_ctl -D $PGDATA -o "-c listen_addresses=''" | ||
+ | |||
+ | psql -U postgres << EOF | ||
+ | create user $DBUSER createdb; | ||
+ | alter user $DBUSER encrypted password ' | ||
+ | create database $DBBASE template template0 encoding ' | ||
+ | alter database $DBBASE owner to $DBUSER; | ||
+ | grant all privileges on database $DBBASE to $DBUSER; | ||
+ | EOF | ||
+ | |||
+ | echo " | ||
+ | fi | ||
+ | |||
+ | if [ " | ||
+ | then | ||
+ | echo " | ||
+ | if [ ! $(pgrep postgres) ] | ||
+ | then | ||
+ | pg_ctl -D $PGDATA -o "-c listen_addresses=''" | ||
+ | fi | ||
+ | echo " | ||
+ | psql -U postgres << EOF | ||
+ | create user $REPUSER replication; | ||
+ | alter user $REPUSER encrypted password ' | ||
+ | EOF | ||
+ | |||
+ | sed -i " | ||
+ | sed -i " | ||
+ | |||
+ | elif [ " | ||
+ | then | ||
+ | sed -i " | ||
+ | echo " | ||
+ | echo " | ||
+ | fi | ||
+ | |||
+ | else | ||
+ | postgres -D $PGDATA | ||
+ | fi | ||
+ | </ | ||
+ | |||
+ | ===== Scripts ===== | ||
+ | Nous avons réalisé trois scripts permettant de facilité certaines opérations. | ||
+ | |||
+ | Le premier consiste à effacer l' | ||
+ | #!/bin/bash | ||
+ | docker rmi $(docker images | grep " | ||
+ | |||
+ | Le second nous permet de déclencher l' | ||
+ | #!/bin/bash | ||
+ | docker stop $(docker ps -a -q) | ||
+ | |||
+ | Enfin, le dernier nous permet d' | ||
+ | #! /bin/sh | ||
+ | # Fonction d' | ||
+ | clean() { | ||
+ | process=$(docker ps -a) | ||
+ | | ||
+ | echo "Arret du conteneur $1 + suppresion" | ||
+ | | ||
+ | if ( echo $process | grep " | ||
+ | docker stop $1 | ||
+ | docker rm $1 | ||
+ | fi | ||
+ | } | ||
+ | | ||
+ | # Fonction de lancement | ||
+ | start() { | ||
+ | echo "Start conteneur $1" | ||
+ | | ||
+ | / | ||
+ | | ||
+ | sleep 5 | ||
+ | } | ||
+ | | ||
+ | # Nettoyage des conteneurs | ||
+ | clean " | ||
+ | clean " | ||
+ | clean " | ||
+ | | ||
+ | # Demarrage des conteneurs | ||
+ | start " | ||
+ | start " | ||
+ | start " | ||
+ | | ||
+ |