Service Informatique H3 Campus
if(array_key_exists('Reset', $_POST)) { FnReset($host); } //Paris if(array_key_exists('NameWP', $_POST)) { FnCreateWP($host); } if(array_key_exists('WP_X', $_POST)) { FnDeleteWP($host); } if(array_key_exists('NamePresta', $_POST)) { FnCreatePresta($host); } if(array_key_exists('Presta_X', $_POST)) { FnDeletePresta($host); } //Poissy if(array_key_exists('NameWP_POI', $_POST)) { FnCreateWP($host_poi); } if(array_key_exists('WP_X_POI', $_POST)) { FnDeleteWP($host_poi); } if(array_key_exists('NamePresta_POI', $_POST)) { FnCreatePresta($host_poi); } if(array_key_exists('Presta_X_POI', $_POST)) { FnDeletePresta($host_poi); } /**************************************** WORDPRESS function PHP POISSY **************************************** */ function FnCreateWP_POI($hostaddr) { if ($_POST['NameWP_POI']==="cancel") {exit;} /* Variables */ $port=8000; //port de départ... $dockerName= $_POST["NameWP_POI"]; $dockerlxc="/root/WP/$dockerName.yml"; //Nom fichier compose $sqlfile ="/root/WP/sql/$dockerName-sql.sql"; //recherche du premier port disponible $connection = @fsockopen($hostaddr, $port); while (is_resource($connection)) { $port++; fclose($connection);$connection = @fsockopen($hostaddr, $port,$errno,$errstr,10); } /* Création des fichiers compose et db */ $Result=ssh_command($hostaddr,"cp /root/WP/wp.yml.save ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/wordpress1/$dockerName/g' ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/8001/$port/g' ".$dockerlxc); $Result=ssh_command($hostaddr,"echo 'CREATE DATABASE IF NOT EXISTS $dockerName;'> $sqlfile" ); $Result=ssh_command($hostaddr,"echo 'GRANT ALL PRIVILEGES ON $dockerName.* TO 'wp_user'@'localhost';'>> $sqlfile >$sqlfile.log"); /* Création de la table correspondante dans la base de donnée */ $Result=ssh_command($hostaddr,"docker-compose -f /root/WP/db.yml exec -T db mysql -uroot -plinux wordpress < $sqlfile"); sleep(10); //création du conteneur docker... $Result=ssh_command($hostaddr, "export COMPOSE_HTTP_TIMEOUT=240 && docker-compose -f $dockerlxc up -d >$dockerlxc.log"); // Vide l'instruction de créer une machine et puis refresh unset($_POST["NameWP_POI"]); header("Refresh:0"); } function FnDeleteWP_POI($host) { $dockerName=$_POST['WP_X_POI']; if ($dockerName==="cancel") {exit;} $Result=ssh_command($host, "docker stop $dockerName"); $Result=ssh_command($host, "docker rm $dockerName"); header("Refresh:0"); } /**************************************************************************************************************** */ /**************************************** PRESTASHOP function PHP POISSY **************************************** */ function FnCreatePresta_POI($hostaddr) { $dockerName=$_POST['NamePresta_POI']; if ($dockerName==="cancel") {exit;} /* Variables */ $port=7000; //port de départ... $dockerlxc="/root/PS/$dockerName.yml"; //Nom fichier compose $sqlfile ="/root/PS/sql.log"; //recherche du premiephp refresh page port disponible $connection = @fsockopen($hostaddr, $port); while (is_resource($connection)) { $port++; fclose($connection);$connection = @fsockopen($hostaddr, $port,$errno,$errstr,10); } /* Création des fichiers compose et db */ $Result=ssh_command($hostaddr,"cp /root/PS/ps.yml.save ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/prestashop1/$dockerName/g' ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/8001/$port/g' ".$dockerlxc); //création du conteneur docker... $Result=ssh_command($hostaddr, "export DOCKER_CLIENT_TIMEOUT=120 && export DOCKER_HTTP_TIMEOUT=120"); $Result=ssh_command($hostaddr, "export COMPOSE_HTTP_TIMEOUT=120 && docker-compose -f $dockerlxc up -d &"); sleep(20); // Vide l'instruction de créer une machine et puis refresh unset($_POST["NamePresta_POI"]); header("Refresh:0"); } function FnDeletePresta_POI($host) { $dockerName=$_POST['Presta_X_POI']; $dockerlxc="/root/PS/$dockerName.yml"; //Nom fichier compose if ($dockerName==="cancel") {exit;} $Result=ssh_command($host, "docker stop $dockerName"); $Result=ssh_command($host, "docker rm $dockerName"); header("Refresh:0"); } /************************************************************************************************************** */ /**************************************** WORDPRESS function PHP PARIS **************************************** */ function FnCreateWP($hostaddr) { $dockerName=$_POST['NameWP']; if ($dockerName==="cancel") {exit;} /* Variables */ $port=8000; //port de départ... $dockerlxc="/root/WP/$dockerName.yml"; //Nom fichier compose $sqlfile ="/root/WP/sql/$dockerName-sql.log"; //recherche du premier port disponible $connection = @fsockopen($hostaddr, $port); while (is_resource($connection)) { $port++; fclose($connection);$connection = @fsockopen($hostaddr, $port,$errno,$errstr,10); } /* Création des fichiers compose et db */ $Result=ssh_command($hostaddr,"cp /root/WP/wp.yml.save ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/wordpress1/$dockerName/g' ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/8001/$port/g' ".$dockerlxc); $Result=ssh_command($hostaddr,"echo 'CREATE DATABASE IF NOT EXISTS $dockerName;'> $sqlfile" ); $Result=ssh_command($hostaddr,"echo 'GRANT ALL PRIVILEGES ON $dockerName.* TO 'wp_user'@'localhost';'>> $sqlfile"); /* Création de la table correspondante dans la base de donnée */ $Result=ssh_command($hostaddr,"docker-compose -f /root/WP/db.yml exec -T db mysql -uroot -plinux wordpress < $sqlfile >$sqlfile.log"); sleep(10); //création du conteneur docker... $Result=ssh_command($hostaddr, "export COMPOSE_HTTP_TIMEOUT=240 && docker-compose -f $dockerlxc up -d >$dockerlxc.log"); // Vide l'instruction de créer une machine et puis refresh unset($_POST["NameWP"]); header("Refresh:0"); } function FnDeleteWP($host) { $dockerName=$_POST['WP_X']; if ($dockerName==="cancel") {exit;} $Result=ssh_command($host, "docker stop $dockerName"); $Result=ssh_command($host, "docker rm $dockerName"); header("Refresh:0"); } /*************************************************************************************************************** */ /**************************************** PRESTASHOP function PHP PARIS **************************************** */ function FnCreatePresta($hostaddr) { $dockerName=$_POST['NamePresta']; if ($dockerName==="cancel") {exit;} /* Variables */ $port=7000; //port de départ... $dockerlxc="/root/PS/$dockerName.yml"; //Nom fichier compose $sqlfile ="/root/PS/sql.sql"; //recherche du premier port disponible $connection = @fsockopen($hostaddr, $port); while (is_resource($connection)) { $port++; fclose($connection);$connection = @fsockopen($hostaddr, $port,$errno,$errstr,10); } /* Création des fichiers compose et db */ $Result=ssh_command($hostaddr,"cp /root/PS/ps.yml.save ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/prestashop1/$dockerName/g' ".$dockerlxc); $Result=ssh_command($hostaddr,"sed -i 's/8001/$port/g' ".$dockerlxc); //création du conteneur docker... $Result=ssh_command($hostaddr, "export DOCKER_CLIENT_TIMEOUT=120 && export DOCKER_HTTP_TIMEOUT=120"); $Result=ssh_command($hostaddr, "export COMPOSE_HTTP_TIMEOUT=120 && docker-compose -f $dockerlxc up -d &"); sleep(20); // Vide l'instruction de créer une machine et puis refresh unset($_POST["NamePresta"]); header("Refresh:0"); } function FnDeletePresta($host) { $dockerName=$_POST['Presta_X']; $dockerlxc="/root/PS/$dockerName.yml"; //Nom fichier compose if ($dockerName==="cancel") {exit;} $Result=ssh_command($host, "docker stop $dockerName"); $Result=ssh_command($host, "docker rm $dockerName"); header("Refresh:0"); } // ******************************************************************************************************************* ?>
Wordpress - Prestashop
NULL) and ($Result2<>NULL)) { echo <<
Serveurs de bases de données
Bases de données Wordpress & Prestashop fonctionnelles
TABLEAU; } else echo "
Attention les bases de données ne sont pas lancés correctement !
"; ?>
PARIS
Nom du Wordpress
"; echo "
".$value ."
Accéder à $value
"; echo ""; } } } ?>
POISSY
Nom du Wordpress
"; echo "
".$value ."
Accéder à $value
"; echo ""; } } } ?>
HTML; ?>