mirror of
https://github.com/YunoHost/yunohost_demo.git
synced 2024-09-03 19:56:44 +02:00
Readme et retour reverse
This commit is contained in:
parent
e30a575227
commit
4f9443a152
3 changed files with 72 additions and 42 deletions
32
README.MD
Normal file
32
README.MD
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
# Scripts de gestion et mise en place des serveurs de demo Yunohost sous LXC
|
||||||
|
|
||||||
|
## demo_lxc_build_init
|
||||||
|
Ce script prépare le serveur hôte à recevoir les conteneurs LXC de demo.
|
||||||
|
Il doit être exécuté une seule fois et en premier.
|
||||||
|
|
||||||
|
## demo_lxc_build
|
||||||
|
Ce script construit les conteneurs de demo et les paramètres.
|
||||||
|
Il met également en places les crons et démarre le 1er conteneur.
|
||||||
|
Après l'exécution de ce script, la demo est en place.
|
||||||
|
|
||||||
|
## demo_lxc_destroy
|
||||||
|
Ce script arrête les conteneurs et les détruits.
|
||||||
|
Il sert en général à une reconstruction des conteneurs avec de nouveaux paramètres. Et devrait donc être suivi du script demo_lxc_build.
|
||||||
|
|
||||||
|
## demo_lxc_remove
|
||||||
|
Ce script, après avoir appelé demo_lxc_destroy va désinstaller LXC et remettre le serveur à son état d'origine. Retirant les paramétrages mis en place pour la demo.
|
||||||
|
Il ne devrait être utilisé qu'en cas de changement de serveur hôte.
|
||||||
|
|
||||||
|
## demo_start
|
||||||
|
Permet simplement un démarrage propre du 1er conteneur. Avec la mise en place du bridge réseau et des règles de parefeu.
|
||||||
|
|
||||||
|
## demo_stop
|
||||||
|
Arrête proprement les conteneurs et désactive la config réseau spécifique.
|
||||||
|
|
||||||
|
## demo_switch
|
||||||
|
Ce script est placé en cron par demo_lxc_build.
|
||||||
|
Il va alterner toutes les 30 minutes (par défaut) les 2 conteneurs et rétablir le snapshot du conteneurs après son extinction.
|
||||||
|
|
||||||
|
## demo_upgrade
|
||||||
|
Ce script est placé en cron par demo_lxc_build.
|
||||||
|
demo_upgrade vérifie chaque nuit les mises à jour sur les conteneurs, et les applique le cas échéant. Si nécessaire, il se charge également de refaire le snapshot.
|
|
@ -60,43 +60,42 @@ IdentityFile $HOME/.ssh/$LXC_NAME1
|
||||||
# End ssh $LXC_NAME1
|
# End ssh $LXC_NAME1
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
## Pas de reverse proxy nécessaire sur le serveur de démo actuel.
|
echo "> Mise en place du reverse proxy" | tee -a "$LOG_BUILD_LXC"
|
||||||
# echo "> Mise en place du reverse proxy" | tee -a "$LOG_BUILD_LXC"
|
echo | sudo tee /etc/nginx/conf.d/$DOMAIN.conf <<EOF
|
||||||
# echo | sudo tee /etc/nginx/conf.d/$DOMAIN.conf <<EOF
|
server {
|
||||||
# server {
|
listen 80;
|
||||||
# listen 80;
|
listen [::]:80;
|
||||||
# listen [::]:80;
|
server_name $DOMAIN;
|
||||||
# server_name $DOMAIN;
|
|
||||||
#
|
if (\$scheme = http) {
|
||||||
# if (\$scheme = http) {
|
rewrite ^ https://\$server_name\$request_uri? permanent;
|
||||||
# rewrite ^ https://\$server_name\$request_uri? permanent;
|
}
|
||||||
# }
|
|
||||||
#
|
access_log /var/log/nginx/$DOMAIN-access.log;
|
||||||
# access_log /var/log/nginx/$DOMAIN-access.log;
|
error_log /var/log/nginx/$DOMAIN-error.log;
|
||||||
# error_log /var/log/nginx/$DOMAIN-error.log;
|
}
|
||||||
# }
|
|
||||||
#
|
server {
|
||||||
# server {
|
listen 443 ssl;
|
||||||
# listen 443 ssl;
|
listen [::]:443 ssl;
|
||||||
# listen [::]:443 ssl;
|
server_name $DOMAIN;
|
||||||
# server_name $DOMAIN;
|
|
||||||
#
|
location / {
|
||||||
# location / {
|
proxy_pass https://$IP_LXC1;
|
||||||
# proxy_pass https://$IP_LXC1;
|
proxy_redirect off;
|
||||||
# proxy_redirect off;
|
proxy_set_header Host \$host;
|
||||||
# proxy_set_header Host \$host;
|
proxy_set_header X-Real-IP \$remote_addr;
|
||||||
# proxy_set_header X-Real-IP \$remote_addr;
|
proxy_set_header X-Forwarded-Proto \$scheme;
|
||||||
# proxy_set_header X-Forwarded-Proto \$scheme;
|
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
|
||||||
# proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-Host \$server_name;
|
||||||
# proxy_set_header X-Forwarded-Host \$server_name;
|
}
|
||||||
# }
|
|
||||||
#
|
access_log /var/log/nginx/$DOMAIN-access.log;
|
||||||
# access_log /var/log/nginx/$DOMAIN-access.log;
|
error_log /var/log/nginx/$DOMAIN-error.log;
|
||||||
# error_log /var/log/nginx/$DOMAIN-error.log;
|
}
|
||||||
# }
|
EOF
|
||||||
# EOF
|
|
||||||
#
|
sudo service nginx reload
|
||||||
# sudo service nginx reload
|
|
||||||
|
|
||||||
# Mise en place de HAProxy
|
# Mise en place de HAProxy
|
||||||
# [...]
|
# [...]
|
||||||
|
|
|
@ -20,8 +20,8 @@ echo "> Supprime le brige réseau"
|
||||||
sudo rm /etc/network/interfaces.d/lxc_demo
|
sudo rm /etc/network/interfaces.d/lxc_demo
|
||||||
|
|
||||||
# LXC était déjà installé sur le serveur de demo actuel. On ne l'enlève pas.
|
# LXC était déjà installé sur le serveur de demo actuel. On ne l'enlève pas.
|
||||||
# echo "> Remove lxc lxctl"
|
echo "> Remove lxc lxctl"
|
||||||
# sudo apt-get remove lxc lxctl
|
sudo apt-get remove lxc lxctl
|
||||||
|
|
||||||
echo "> Suppression de la clé SSH"
|
echo "> Suppression de la clé SSH"
|
||||||
rm -f $HOME/.ssh/$LXC_NAME1 $HOME/.ssh/$LXC_NAME1.pub
|
rm -f $HOME/.ssh/$LXC_NAME1 $HOME/.ssh/$LXC_NAME1.pub
|
||||||
|
@ -29,10 +29,9 @@ echo "> Et de sa config spécifique dans $HOME/.ssh/config"
|
||||||
BEGIN_LINE=$(cat $HOME/.ssh/config | grep -n "^# ssh $LXC_NAME1" | cut -d':' -f 1)
|
BEGIN_LINE=$(cat $HOME/.ssh/config | grep -n "^# ssh $LXC_NAME1" | cut -d':' -f 1)
|
||||||
sed -i "$BEGIN_LINE,/^# End ssh $LXC_NAME1/d" $HOME/.ssh/config
|
sed -i "$BEGIN_LINE,/^# End ssh $LXC_NAME1/d" $HOME/.ssh/config
|
||||||
|
|
||||||
## Pas de reverse proxy nécessaire sur le serveur de démo actuel.
|
|
||||||
# Suppression du reverse proxy
|
# Suppression du reverse proxy
|
||||||
# sudo rm /etc/nginx/conf.d/$DOMAIN.conf
|
sudo rm /etc/nginx/conf.d/$DOMAIN.conf
|
||||||
# sudo service nginx reload
|
sudo service nginx reload
|
||||||
|
|
||||||
# Suppression de la config haproxy
|
# Suppression de la config haproxy
|
||||||
# La config haproxy est modifiée manuellement.
|
# La config haproxy est modifiée manuellement.
|
||||||
|
|
Loading…
Add table
Reference in a new issue