adapted for GMo environment
This commit is contained in:
parent
33c279b725
commit
098aa97c37
29
docker.sh
29
docker.sh
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
progName="./$(/bin/basename $0)"
|
progName="./$(/bin/basename $0)"
|
||||||
vdgRepository="registry-docker.ville-geneve.ch"
|
gmoRepository="registry-docker.gmolab.net"
|
||||||
|
#gmoRepository="gitweb.dyndns.org"
|
||||||
|
|
||||||
# Fonction d'affichage d'utilisation
|
# Fonction d'affichage d'utilisation
|
||||||
function print_usage {
|
function print_usage {
|
||||||
@ -13,8 +13,10 @@ Usage: $progName [options]
|
|||||||
Options:
|
Options:
|
||||||
build Construction des images docker 'PHP-FPM' pour 'drupal'
|
build Construction des images docker 'PHP-FPM' pour 'drupal'
|
||||||
build-no-cache Construction des images docker 'PHP-FPM' pour 'drupal' sans cache
|
build-no-cache Construction des images docker 'PHP-FPM' pour 'drupal' sans cache
|
||||||
pull Téléchargement de l'image docker depuis le dépôt '${vdgRepository}'
|
pull Téléchargement de l'image docker depuis le dépôt '${gmoRepository}'
|
||||||
pull-tests Téléchargement de l'image docker de tests depuis le dépôt '${vdgRepository}'
|
pull-tests Téléchargement de l'image docker de tests depuis le dépôt '${gmoRepository}'
|
||||||
|
push Téléversement de l'image docker sur le dépôt '${gmoRepository}'
|
||||||
|
push-tests Téléversement de l'image docker de tests sur le dépôt '${gmoRepository}'
|
||||||
-t,--tag Variable permettant de définir le <tag> de l'image 'PHP-FPM' de base
|
-t,--tag Variable permettant de définir le <tag> de l'image 'PHP-FPM' de base
|
||||||
-n,--type Variable permettant de définir le <type> de l'image
|
-n,--type Variable permettant de définir le <type> de l'image
|
||||||
bash Ouverture d'un shell dans le conteneur 'PHP-FPM' de base
|
bash Ouverture d'un shell dans le conteneur 'PHP-FPM' de base
|
||||||
@ -30,7 +32,7 @@ Exemples:
|
|||||||
$progName --type=<type> --tag=<tag> build
|
$progName --type=<type> --tag=<tag> build
|
||||||
ou
|
ou
|
||||||
$progName -n <type> -t <tag> build
|
$progName -n <type> -t <tag> build
|
||||||
Pour télécharger l'image 'PHP-FPM' pour 'drupal' avec le type '<type>' et le tag '<tag>' depuis le dépôt '${vdgRepository}'
|
Pour télécharger l'image 'PHP-FPM' pour 'drupal' avec le type '<type>' et le tag '<tag>' depuis le dépôt '${gmoRepository}'
|
||||||
$progName --type=<type> --tag=<tag> pull
|
$progName --type=<type> --tag=<tag> pull
|
||||||
Pour construire et analyser le contenu de l'image 'PHP-FPM' pour 'drupal' avec comme type '<type>' et comme tag '<tag>'
|
Pour construire et analyser le contenu de l'image 'PHP-FPM' pour 'drupal' avec comme type '<type>' et comme tag '<tag>'
|
||||||
$progName -n <type> -t <tag> bash
|
$progName -n <type> -t <tag> bash
|
||||||
@ -42,7 +44,7 @@ EOF
|
|||||||
set -e
|
set -e
|
||||||
_UID=$(id -u)
|
_UID=$(id -u)
|
||||||
_GID=$(id -g)
|
_GID=$(id -g)
|
||||||
_IMG_REPO="${vdgRepository}/devspe/docker-base-image/php"
|
_IMG_REPO="${gmoRepository}/docker-base-image/php"
|
||||||
_TYPE=""
|
_TYPE=""
|
||||||
_TAG=""
|
_TAG=""
|
||||||
DOCKER_REGISTRY="$(grep -s 'DOCKER_REGISTRY=' .env | cut -f2 -d=)"
|
DOCKER_REGISTRY="$(grep -s 'DOCKER_REGISTRY=' .env | cut -f2 -d=)"
|
||||||
@ -90,6 +92,11 @@ do
|
|||||||
_SUFFIX="$(echo $1 | cut -f2 -d- -s | sed -e 's|^tests\?$|-tests|')"
|
_SUFFIX="$(echo $1 | cut -f2 -d- -s | sed -e 's|^tests\?$|-tests|')"
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
push|push-tests|push-test)
|
||||||
|
COMMAND="$1"
|
||||||
|
_SUFFIX="$(echo $1 | cut -f2 -d- -s | sed -e 's|^tests\?$|-tests|')"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
bash|bash-tests|bash-test)
|
bash|bash-tests|bash-test)
|
||||||
COMMAND="$1"
|
COMMAND="$1"
|
||||||
_SUFFIX="$(echo $1 | cut -f2 -d- -s | sed -e 's|^tests\?$|-tests|')"
|
_SUFFIX="$(echo $1 | cut -f2 -d- -s | sed -e 's|^tests\?$|-tests|')"
|
||||||
@ -158,6 +165,8 @@ case "$COMMAND" in
|
|||||||
build)
|
build)
|
||||||
echo -e "${CYAN}# Building base image $_TYPE with tag $_TAG:"
|
echo -e "${CYAN}# Building base image $_TYPE with tag $_TAG:"
|
||||||
docker build --build-arg IMG_TAG="$_TAG" --build-arg DIR_ARG="src/${_TYPE}/$_TAG" --pull -t $_IMG_REPO/$_TYPE:$_TAG -f ./src/${_TYPE}/$_TAG/Dockerfile .
|
docker build --build-arg IMG_TAG="$_TAG" --build-arg DIR_ARG="src/${_TYPE}/$_TAG" --pull -t $_IMG_REPO/$_TYPE:$_TAG -f ./src/${_TYPE}/$_TAG/Dockerfile .
|
||||||
|
#echo "docker build --build-arg IMG_TAG=\"$_TAG\" --build-arg DIR_ARG=\"src/${_TYPE}/$_TAG\" --pull -t $_IMG_REPO/$_TYPE:$_TAG -f ./src/${_TYPE}/$_TAG/Dockerfile . "
|
||||||
|
#exit
|
||||||
echo -e "${CYAN}# Building tests image $_TYPE with tag ${_TAG}-tests:"
|
echo -e "${CYAN}# Building tests image $_TYPE with tag ${_TAG}-tests:"
|
||||||
docker build --build-arg IMG_TAG="$_TAG" --build-arg DIR_ARG="src/${_TYPE}/$_TAG" --build-arg IMG_NAME="$_IMG_REPO/$_TYPE" -t $_IMG_REPO/$_TYPE:${_TAG}-tests -f ./src/${_TYPE}/$_TAG/Dockerfile-tests .
|
docker build --build-arg IMG_TAG="$_TAG" --build-arg DIR_ARG="src/${_TYPE}/$_TAG" --build-arg IMG_NAME="$_IMG_REPO/$_TYPE" -t $_IMG_REPO/$_TYPE:${_TAG}-tests -f ./src/${_TYPE}/$_TAG/Dockerfile-tests .
|
||||||
;;
|
;;
|
||||||
@ -169,6 +178,14 @@ case "$COMMAND" in
|
|||||||
fi
|
fi
|
||||||
docker logout ${DOCKER_REGISTRY}
|
docker logout ${DOCKER_REGISTRY}
|
||||||
;;
|
;;
|
||||||
|
push|push-tests|push-test)
|
||||||
|
DOCKER_REGISTRY_USER="$(grep -s 'DOCKER_REGISTRY_USER=' .env | cut -f2 -d=)"
|
||||||
|
grep -s 'DOCKER_REGISTRY_PASSWORD=' .env | cut -f2 -d= | docker login -u ${DOCKER_REGISTRY_USER} --password-stdin ${DOCKER_REGISTRY}
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
docker push $_IMG_REPO/$_TYPE:$_TAG$_SUFFIX
|
||||||
|
fi
|
||||||
|
docker logout ${DOCKER_REGISTRY}
|
||||||
|
;;
|
||||||
bash|bash-tests|bash-test)
|
bash|bash-tests|bash-test)
|
||||||
if [ -z "$(docker image ls -q ${_IMG_REPO}/${_TYPE}:${_TAG}${_SUFFIX} 2>/dev/null)" ]; then
|
if [ -z "$(docker image ls -q ${_IMG_REPO}/${_TYPE}:${_TAG}${_SUFFIX} 2>/dev/null)" ]; then
|
||||||
echo -e "${RED}L'image 'PHP-FPM' ${_TYPE} avec le tag '${_TAG}${_SUFFIX}' n'existe pas localement !${NC}"
|
echo -e "${RED}L'image 'PHP-FPM' ${_TYPE} avec le tag '${_TAG}${_SUFFIX}' n'existe pas localement !${NC}"
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
# Build de l'image applicative
|
# Build de l'image applicative
|
||||||
ARG IMG_TAG=$IMG_TAG
|
ARG IMG_TAG=$IMG_TAG
|
||||||
FROM php:$IMG_TAG
|
FROM php:$IMG_TAG
|
||||||
LABEL maintainer="devops@geneve.ch"
|
#FROM php:8.1-fpm-alpine3.18
|
||||||
|
|
||||||
|
LABEL maintainer="gilles.mouchet@gmail.com"
|
||||||
|
|
||||||
ARG DIR_ARG=$DIR_ARG
|
ARG DIR_ARG=$DIR_ARG
|
||||||
ENV DIR=$DIR_ARG
|
ENV DIR=$DIR_ARG
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
# Build de l'image applicative
|
# Build de l'image applicative
|
||||||
ARG IMG_TAG=$IMG_TAG
|
ARG IMG_TAG=$IMG_TAG
|
||||||
FROM php:$IMG_TAG
|
FROM php:$IMG_TAG
|
||||||
LABEL maintainer="devops@geneve.ch"
|
#FROM php:8.1-fpm-alpine3.18
|
||||||
|
|
||||||
|
LABEL maintainer="gilles.mouchet@gmail.com"
|
||||||
|
|
||||||
ARG DIR_ARG=$DIR_ARG
|
ARG DIR_ARG=$DIR_ARG
|
||||||
ENV DIR=$DIR_ARG
|
ENV DIR=$DIR_ARG
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user