Mission 1 : WEB - SuperKumKum/SysAdmin-ll_Project GitHub Wiki
docker pull php:apache
docker pull mysql:latest
On créée un fichier:
docker-compose.yml
# apache et php
# php:apache officiel
php:
image: nimmis/apache-php5
container_name: apache-php
ports:
- 80:80
- 443:443
volumes:
- /srv/docker/apache/conf:/etc/apache2
- /srv/docker/apache/html:/var/www/html
- /srv/docker/apache/logs:/var/log/apache2
- /srv/docker/apache/ssl:/etc/ssl/certs/wt7
links:
- db
# sql
# mariadb
db:
image: mysql/mysql-server:5.6
container_name: db
environment:
- MYSQL_ROOT_PASSWORD=rootPassword
- MYSQL_USER=wt7
- MYSQL_DATABASE=web_db
- MYSQL_PASSWORD=password
ports:
- 3306:3306
On lance notre Docker-Compose :
docker-compose up
docker exec -it <apache> bash
docker exec -it <mysql> bash
sudo docker ps -a | grep Exit | cut -d ' ' -f 1 | xargs sudo docker rm
docker start/stop <apache>
docker start/stop <mysql>
- On rentre dans l'image Docker via la commande > docker exec
On ajoute chaque sites correspondants dans un dossier spécifique pour la création des vHosts.
-
/var/www/www
pour la page web. -
/var/www/b2b
pour la page b2b. -
/var/www/intranet
pour la page intranet.
On créée un fichier basé sur
00_default.conf
qui se trouve dans le dossier/etc/apache2/sites-available
.
Contenu du fichier nommé sites_config.conf
:
-
vHost pour la page web/www :
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName www.wt7.ephec-ti.be
ServerAlias wt7.ephec-ti.be
DocumentRoot /var/www/www
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
-
vHost pour la page b2b/php :
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName b2b.wt7.ephec-ti.be
ServerAlias wt7.ephec-ti.be
DocumentRoot /var/www/b2b
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
-
vHost pour la page intranet :
<VirtualHost *:80>
ServerName intranet.wt7.ephec-ti.be
DocumentRoot /var/www/intranet
<Directory /var/www/intranet>
Allow from 151.80.119.151
Deny from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
On utilise les options
Allow from
etDeny from
pour restreindre l'accès au site.
- On a besoin de créer un fichier
.htaccess
dans le dossier contenant le site où l'on veut un page spéciale. - On créer ensuite une exception dans ce fichier
ErrorDocument 403 /path/access/toPage.html
Il s'agit avant tout de la création d'une base de donnée en mode commande.
- Il faut d'abord se connecter à MySQL via la commande :
mysql -h localhost -u root -p
- -h défini l'hôte, donc soit une NS ou une ip.
- -u défini l'utilisateur, par défaut,
root
.- -p défini le password, inscrit plus tôt dans le Docker-Compose ou est
vide
par défaut.
- On crée la base de données avec la commande :
CREATE DATABASE db_wt7;
- On crée une table avec la commande :
CREATE TABLE db_Table (id tinyint(3), produits varchar(100), qte tinyint(3));
- On ajoute des données à cette table avec la commande :
INSERT INTO 'db_Table' VALUES (1, "Jouet en bois", 25);
- Création d'un utilisateur ayant tous les droits sur la base de donnée :
GRANT ALL PRIVILEGES ON db_Table.* TO user@localhost IDENTIFIED BY "mot_de_passe";