Compare commits
2 Commits
dc62da5bdf
...
701e30433e
Author | SHA1 | Date |
---|---|---|
afornerot | 701e30433e | |
afornerot | 071919ad82 |
|
@ -11,6 +11,8 @@ docker-compose.yml
|
||||||
|
|
||||||
/services/30-openldap/volume/data
|
/services/30-openldap/volume/data
|
||||||
|
|
||||||
|
/services/30-redis/volume
|
||||||
|
|
||||||
/services/40-keycloak/volume/realm/realm-export.json
|
/services/40-keycloak/volume/realm/realm-export.json
|
||||||
|
|
||||||
/services/50-nextcloud/volume/data
|
/services/50-nextcloud/volume/data
|
||||||
|
|
|
@ -73,6 +73,13 @@ REDIS_LOCAL=1
|
||||||
REDIS_HOST=${REDIS_SERVICE_NAME}
|
REDIS_HOST=${REDIS_SERVICE_NAME}
|
||||||
REDIS_PORT=6379
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
# SENTINEL
|
||||||
|
SENTINEL_SERVICE_NAME=sentinel
|
||||||
|
SENTINEL_ACTIVATE=1
|
||||||
|
SENTINEL_LOCAL=1
|
||||||
|
SENTINEL_HOST=${SENTINEL_SERVICE_NAME}
|
||||||
|
SENTINEL_PORT=26379
|
||||||
|
|
||||||
# MINIO
|
# MINIO
|
||||||
MINIO_SERVICE_NAME=minio
|
MINIO_SERVICE_NAME=minio
|
||||||
MINIO_ACTIVATE=1
|
MINIO_ACTIVATE=1
|
||||||
|
@ -101,18 +108,28 @@ LDAP_BASEORGANISATION=ou=ninegate,${LDAP_BASEDN}
|
||||||
LDAP_BASEUSER=ou=users,${LDAP_BASEORGANISATION}
|
LDAP_BASEUSER=ou=users,${LDAP_BASEORGANISATION}
|
||||||
LDAP_BASENIVEAU01=ou=niveau01,${LDAP_BASEORGANISATION}
|
LDAP_BASENIVEAU01=ou=niveau01,${LDAP_BASEORGANISATION}
|
||||||
LDAP_BASENIVEAU02=ou=niveau02,${LDAP_BASEORGANISATION}
|
LDAP_BASENIVEAU02=ou=niveau02,${LDAP_BASEORGANISATION}
|
||||||
|
LDAP_BASENIVEAU03=ou=niveau03,${LDAP_BASEORGANISATION}
|
||||||
|
LDAP_BASENIVEAU04=ou=niveau04,${LDAP_BASEORGANISATION}
|
||||||
LDAP_BASEGROUP=ou=groups,${LDAP_BASEORGANISATION}
|
LDAP_BASEGROUP=ou=groups,${LDAP_BASEORGANISATION}
|
||||||
LDAP_SYNC=1
|
LDAP_SYNC=1
|
||||||
LDAP_TEMPLATE=open
|
LDAP_TEMPLATE=open
|
||||||
|
|
||||||
LDAP_USERNAME=uid
|
LDAP_USERNAME=uid
|
||||||
LDAP_FIRSTNAME=givenname
|
LDAP_FIRSTNAME=givenname
|
||||||
LDAP_LASTNAME=sn
|
LDAP_LASTNAME=sn
|
||||||
LDAP_DISPLAYNAME=displayName
|
LDAP_DISPLAYNAME=displayName
|
||||||
LDAP_EMAIL=mail
|
LDAP_EMAIL=mail
|
||||||
LDAP_MEMBER=memberUid
|
LDAP_MEMBEROF=memberOf
|
||||||
LDAP_USER_FILTER="(&(${LDAP_USERNAME}=*)(objectClass=person)(!(description=Computer)))"
|
|
||||||
|
LDAP_GROUP_GID=gidnumber
|
||||||
|
LDAP_GROUP_NAME=cn
|
||||||
|
LDAP_GROUP_MEMBER=memberUid
|
||||||
|
LDAP_GROUP_MEMBERISDN=0
|
||||||
|
|
||||||
LDAP_LOGIN_FILTER="(&(${LDAP_USERNAME}=%uid%)(objectClass=person)(!(description=Computer)))"
|
LDAP_LOGIN_FILTER="(&(${LDAP_USERNAME}=%uid%)(objectClass=person)(!(description=Computer)))"
|
||||||
|
LDAP_USER_FILTER="(&(${LDAP_USERNAME}=*)(objectClass=person)(!(description=Computer)))"
|
||||||
LDAP_GROUP_FILTER="(&(objectClass=posixGroup))"
|
LDAP_GROUP_FILTER="(&(objectClass=posixGroup))"
|
||||||
|
|
||||||
SCRIBE_GROUP=1
|
SCRIBE_GROUP=1
|
||||||
SCRIBE_MASTER=1
|
SCRIBE_MASTER=1
|
||||||
OPENLDAPREQNIVEAU01="(&(uid=*)(objectclass=inetOrgPerson)(!(description=Computer)))"
|
OPENLDAPREQNIVEAU01="(&(uid=*)(objectclass=inetOrgPerson)(!(description=Computer)))"
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
FROM redis:6-alpine
|
||||||
|
|
||||||
|
ENV SENTINEL_QUORUM 2
|
||||||
|
ENV SENTINEL_DOWN_AFTER 1000
|
||||||
|
ENV SENTINEL_FAILOVER 1000
|
||||||
|
|
||||||
|
RUN mkdir -p /redis
|
||||||
|
|
||||||
|
WORKDIR /redis
|
||||||
|
|
||||||
|
COPY sentinel.conf .
|
||||||
|
COPY sentinel-entrypoint.sh /usr/local/bin/
|
||||||
|
|
||||||
|
RUN chown redis:redis /redis/* && \
|
||||||
|
chmod +x /usr/local/bin/sentinel-entrypoint.sh
|
||||||
|
|
||||||
|
EXPOSE 26379
|
||||||
|
|
||||||
|
ENTRYPOINT ["sentinel-entrypoint.sh"]
|
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
sed -i "s/\$SENTINEL_QUORUM/$SENTINEL_QUORUM/g" /redis/sentinel.conf
|
||||||
|
sed -i "s/\$SENTINEL_DOWN_AFTER/$SENTINEL_DOWN_AFTER/g" /redis/sentinel.conf
|
||||||
|
sed -i "s/\$SENTINEL_FAILOVER/$SENTINEL_FAILOVER/g" /redis/sentinel.conf
|
||||||
|
|
||||||
|
redis-server /redis/sentinel.conf --sentinel
|
|
@ -0,0 +1,9 @@
|
||||||
|
port 26379
|
||||||
|
|
||||||
|
dir /tmp
|
||||||
|
|
||||||
|
sentinel resolve-hostnames yes
|
||||||
|
sentinel monitor redismaster redis 6379 $SENTINEL_QUORUM
|
||||||
|
sentinel down-after-milliseconds redismaster $SENTINEL_DOWN_AFTER
|
||||||
|
sentinel parallel-syncs redismaster 1
|
||||||
|
sentinel failover-timeout redismaster $SENTINEL_FAILOVER
|
33
nine.sh
33
nine.sh
|
@ -106,6 +106,26 @@ destroyall(){
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#===========================================================================================================================================
|
||||||
|
#== PULL ===================================================================================================================================
|
||||||
|
#===========================================================================================================================================
|
||||||
|
|
||||||
|
pull(){
|
||||||
|
if [[ "$1" == "" ]]
|
||||||
|
then
|
||||||
|
Question_ouinon "Souhaitez-vous mettre à jour les images ?"
|
||||||
|
else
|
||||||
|
Question_ouinon "Souhaitez-vous mettre à jour l'images du service $1 ?"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$?" = 0 ]]
|
||||||
|
then
|
||||||
|
stop $1
|
||||||
|
docker-compose pull $1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
#===========================================================================================================================================
|
#===========================================================================================================================================
|
||||||
#== ENV ====================================================================================================================================
|
#== ENV ====================================================================================================================================
|
||||||
#===========================================================================================================================================
|
#===========================================================================================================================================
|
||||||
|
@ -281,6 +301,9 @@ then
|
||||||
else
|
else
|
||||||
destroy$2
|
destroy$2
|
||||||
fi
|
fi
|
||||||
|
elif [[ $1 == "pull" ]]
|
||||||
|
then
|
||||||
|
pull $2
|
||||||
elif [[ $1 == "services" ]]
|
elif [[ $1 == "services" ]]
|
||||||
then
|
then
|
||||||
services
|
services
|
||||||
|
@ -327,10 +350,12 @@ else
|
||||||
EchoRouge "nine.sh uplogs > UP puis logs de l'ensemble des services actifs"
|
EchoRouge "nine.sh uplogs > UP puis logs de l'ensemble des services actifs"
|
||||||
EchoRouge "nine.sh uplogs monservice> UP puis logs de monservice"
|
EchoRouge "nine.sh uplogs monservice> UP puis logs de monservice"
|
||||||
EchoRouge "nine.sh stop > STOP de l'ensemble des services"
|
EchoRouge "nine.sh stop > STOP de l'ensemble des services"
|
||||||
EchoRouge "nine.sh stop monservice> STOP de monservice"
|
EchoRouge "nine.sh stop monservice > STOP de monservice"
|
||||||
EchoRouge "nine.sh bash monservice> lance un terminel dans le conteneur de monservice"
|
EchoRouge "nine.sh bash monservice > lance un terminel dans le conteneur de monservice"
|
||||||
EchoRouge "nine.sh destroyall> détruit l'ensemble des services avec l'ensemble des BDD et des volumes persistant"
|
EchoRouge "nine.sh destroyall > détruit l'ensemble des services avec l'ensemble des BDD et des volumes persistant"
|
||||||
EchoRouge "nine.sh destroy monservice> détruit monservices et si souhaitez sa BDD et ses volumes persistant"
|
EchoRouge "nine.sh destroy monservice > détruit monservices et si souhaitez sa BDD et ses volumes persistant"
|
||||||
|
EchoRouge "nine.sh pull > Mettre à jour l'ensemble des images"
|
||||||
|
EchoRouge "nine.sh pull monservice > Mettre à jour l'image de monservice"
|
||||||
EchoRouge "nine.sh services > Liste des Services"
|
EchoRouge "nine.sh services > Liste des Services"
|
||||||
EchoRouge "nine.sh logs > LOGS de l'ensemble des services"
|
EchoRouge "nine.sh logs > LOGS de l'ensemble des services"
|
||||||
EchoRouge "nine.sh logs monservice > LOGS de monservice"
|
EchoRouge "nine.sh logs monservice > LOGS de monservice"
|
||||||
|
|
|
@ -10,3 +10,5 @@ services:
|
||||||
- nine-network
|
- nine-network
|
||||||
environment:
|
environment:
|
||||||
- TZ=Europe/Paris
|
- TZ=Europe/Paris
|
||||||
|
volumes:
|
||||||
|
- ./services/30-redis/volume/data:/data:rw
|
||||||
|
|
|
@ -18,6 +18,16 @@ function destroyredis(){
|
||||||
stop $REDIS_SERVICE_NAME 1
|
stop $REDIS_SERVICE_NAME 1
|
||||||
docker-compose rm -s -v -f "$REDIS_SERVICE_NAME"
|
docker-compose rm -s -v -f "$REDIS_SERVICE_NAME"
|
||||||
|
|
||||||
|
if [[ -z $1 ]]; then
|
||||||
|
Question_ouinon "Souhaitez-vous supprimer la BDD associé à $REDIS_SERVICE_NAME ?";
|
||||||
|
response=$?
|
||||||
|
fi
|
||||||
|
if [[ "$response" == 0 || ! -z $1 ]]
|
||||||
|
then
|
||||||
|
EchoRouge "Delete BDD = $REDIS_SERVICE_NAME"
|
||||||
|
rm -rf services/30-redis/volume/data
|
||||||
|
fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
fi
|
fi
|
||||||
}
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
services:
|
||||||
|
# Sentinel
|
||||||
|
# Sentinel du servince redis
|
||||||
|
# Port interne 26379
|
||||||
|
sentinel:
|
||||||
|
image: reg.cadoles.com/envole/sentinel
|
||||||
|
container_name: nine-sentinel
|
||||||
|
env_file: ./services/35-sentinel/env/.env.merge
|
||||||
|
networks:
|
||||||
|
- nine-network
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
|
||||||
|
# == SENTINEL ================================================================================================================================
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
function upsentinel {
|
||||||
|
if [[ $SENTINEL_ACTIVATE == 1 && $SENTINEL_LOCAL == 1 ]]
|
||||||
|
then
|
||||||
|
Title "SENTINEL"
|
||||||
|
EchoVert "CONTAINER"
|
||||||
|
upservice $SENTINEL_SERVICE_NAME
|
||||||
|
Echo
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function destroysentinel(){
|
||||||
|
if [[ $SENTINEL_LOCAL == 1 ]]
|
||||||
|
then
|
||||||
|
Title "DESTROY $SENTINEL_SERVICE_NAME"
|
||||||
|
|
||||||
|
stop $SENTINEL_SERVICE_NAME 1
|
||||||
|
docker-compose rm -s -v -f "$SENTINEL_SERVICE_NAME"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
}
|
|
@ -19,7 +19,7 @@ MAILER_NOREPLY=noreply@noreply.fr
|
||||||
|
|
||||||
# Basic
|
# Basic
|
||||||
APP_WEBURL=${WEB_URL}
|
APP_WEBURL=${WEB_URL}
|
||||||
APP_MASTERIDENTITY=${MASTERIDENTITY} # SQL | SSO | LDAP
|
APP_MASTERIDENTITY=LDAP # SQL | SSO | LDAP
|
||||||
APP_AUTH=${MODE_AUTH} # SQL | CAS | LDAP | OPENID
|
APP_AUTH=${MODE_AUTH} # SQL | CAS | LDAP | OPENID
|
||||||
APP_ALIAS=/${NINESKELETOR_PREFIX}/
|
APP_ALIAS=/${NINESKELETOR_PREFIX}/
|
||||||
APP_NAME=Nineskeletor
|
APP_NAME=Nineskeletor
|
||||||
|
@ -40,7 +40,7 @@ APP_NIVEAU02LABEL="Niveau 02"
|
||||||
APP_NIVEAU02LABELS="Niveaux 02"
|
APP_NIVEAU02LABELS="Niveaux 02"
|
||||||
APP_NIVEAU02MANDATORY='[""]'
|
APP_NIVEAU02MANDATORY='[""]'
|
||||||
|
|
||||||
APP_NIVEAU03USE=1
|
APP_NIVEAU03USE=0
|
||||||
APP_NIVEAU03LABEL="Niveau 03"
|
APP_NIVEAU03LABEL="Niveau 03"
|
||||||
APP_NIVEAU03LABELS="Niveaux 03"
|
APP_NIVEAU03LABELS="Niveaux 03"
|
||||||
APP_NIVEAU03MANDATORY='[""]'
|
APP_NIVEAU03MANDATORY='[""]'
|
||||||
|
@ -62,24 +62,22 @@ APP_ANNUSCOPEUSER=ALL # ALL or number
|
||||||
APP_USERVIEWISVISIBLE=1 # Profil user with isvisible field
|
APP_USERVIEWISVISIBLE=1 # Profil user with isvisible field
|
||||||
|
|
||||||
# Synchronisation
|
# Synchronisation
|
||||||
APP_SYNCHRO=NINE2LDAP # Synchronisation null | LDAP2NINE | NINE2LDAP | NINE2NINE
|
APP_SYNCHRO=LDAP2NINE # Synchronisation null | LDAP2NINE | NINE2LDAP | NINE2NINE
|
||||||
APP_SYNDCHROPURGENIVEAU01=1 # Purger les niveau01s obsolète en cas de synchronisation
|
APP_SYNDCHROPURGENIVEAU01=1 # Purger les niveau01s obsolète en cas de synchronisation
|
||||||
APP_SYNDCHROPURGENIVEAU02=1 # Purger les niveau02s obsolète en cas de synchronisation
|
APP_SYNDCHROPURGENIVEAU02=1 # Purger les niveau02s obsolète en cas de synchronisation
|
||||||
APP_SYNDCHROPURGENIVEAU03=1 # Purger les niveau03s obsolète en cas de synchronisation
|
APP_SYNDCHROPURGENIVEAU03=0 # Purger les niveau03s obsolète en cas de synchronisation
|
||||||
APP_SYNDCHROPURGENIVEAU04=1 # Purger les niveau04s obsolète en cas de synchronisation
|
APP_SYNDCHROPURGENIVEAU04=0 # Purger les niveau04s obsolète en cas de synchronisation
|
||||||
APP_SYNDCHROPURGEGROUP=1 # Purger les groups obsolète en cas de synchronisation
|
APP_SYNDCHROPURGEGROUP=1 # Purger les groups obsolète en cas de synchronisation
|
||||||
APP_SYNDCHROPURGEUSER=1 # Purger les users obsolète en cas de synchronisation
|
APP_SYNDCHROPURGEUSER=1 # Purger les users obsolète en cas de synchronisation
|
||||||
|
|
||||||
# LDAP
|
# LDAP
|
||||||
LDAP_PORT=389 # port du serveur ldap ex:389
|
LDAP_USETLS=${LDAP_TLS} # connection TLS 0/1
|
||||||
LDAP_USETLS=0 # connection TLS 0/1
|
|
||||||
LDAP_USERWRITER=1 # LDAP_USER compte writer ? 0/1
|
LDAP_USERWRITER=1 # LDAP_USER compte writer ? 0/1
|
||||||
LDAP_USER=${LDAP_ADMIN_USERNAME} # DN compte access ldap
|
|
||||||
LDAP_MEMBEROF=memberof # Attribut memberof d'un user
|
LDAP_GROUPGID=${LDAP_GROUP_GID} # Attribut gid d'un groupe
|
||||||
LDAP_GROUPGID=gidnumber # Attribut gid d'un groupe
|
LDAP_GROUPNAME=${LDAP_GROUP_NAME} # Attribut name d'un groupe
|
||||||
LDAP_GROUPNAME=cn # Attribut name d'un groupe
|
LDAP_GROUPMEMBER=${LDAP_GROUP_MEMBER} # Attribut stockant les membres d'un groupe
|
||||||
LDAP_GROUPMEMBER=${LDAP_MEMBER} # Attribut stockant les membres d'un groupe
|
LDAP_GROUPMEMBERISDN=${LDAP_GROUP_MEMBERISDN} # LDAP_GROUPMEMBER stocke un uid ou un dn ? 0/1
|
||||||
LDAP_GROUPMEMBERISDN=0 # LDAP_GROUPMEMBER stocke un uid ou un dn ? 0/1
|
|
||||||
LDAP_FILTERGROUP=${LDAP_GROUP_FILTER} # requete ldap pour rechercher les groupes
|
LDAP_FILTERGROUP=${LDAP_GROUP_FILTER} # requete ldap pour rechercher les groupes
|
||||||
LDAP_FILTERUSER=${LDAP_USER_FILTER} # requete ldap pour rechercher les users
|
LDAP_FILTERUSER=${LDAP_USER_FILTER} # requete ldap pour rechercher les users
|
||||||
LDAP_AUTOSUBMIT=1 # if APP_AUTH = LDAP autocréer les users non existant
|
LDAP_AUTOSUBMIT=1 # if APP_AUTH = LDAP autocréer les users non existant
|
||||||
|
|
Loading…
Reference in New Issue