Made a special subject for nginx-static exercice
This commit is contained in:
parent
f8ae329ebb
commit
12b62208bd
12
subject/nginx-static/Makefile
Normal file
12
subject/nginx-static/Makefile
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
include ../../tutorial/pandoc-opts.mk
|
||||||
|
|
||||||
|
SOURCES = subject.md ex-nginx-static.md rendu.md end.md
|
||||||
|
|
||||||
|
|
||||||
|
all: subject.pdf
|
||||||
|
|
||||||
|
subject.pdf: ${SOURCES}
|
||||||
|
pandoc ${PANDOCOPTS} -o $@ $+
|
||||||
|
|
||||||
|
clean::
|
||||||
|
rm subject.pdf
|
1
subject/nginx-static/end.md
Normal file
1
subject/nginx-static/end.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
Bon courage !
|
48
subject/nginx-static/ex-nginx-static.md
Normal file
48
subject/nginx-static/ex-nginx-static.md
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
Projet
|
||||||
|
======
|
||||||
|
|
||||||
|
Avec l'aide d'un `Dockerfile` *multi-stage*, réalisez l'image la plus petite
|
||||||
|
possible (partant d'un `FROM scratch`{.dockerfile}), qui permette d'utiliser la
|
||||||
|
[page de compte à rebours](https://virli.nemunai.re/countdown.html) avec cette
|
||||||
|
configuration pour nginx :
|
||||||
|
|
||||||
|
<div lang="en-US">
|
||||||
|
```conf
|
||||||
|
events {}
|
||||||
|
|
||||||
|
http {
|
||||||
|
default_type text/html;
|
||||||
|
|
||||||
|
index countdown.html;
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 8080;
|
||||||
|
|
||||||
|
root /srv/http;
|
||||||
|
|
||||||
|
rewrite "^/[0-9]+:[0-9]{2}$" /countdown.html;
|
||||||
|
rewrite "^/[0-9]+$" /countdown.html;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
</div>
|
||||||
|
|
||||||
|
Vous pouvez envisager dans un premier temps d'extraire de l'image `nginx`, le
|
||||||
|
binaire `nginx` lui-même et observer les différents problèmes. Vous pourrez
|
||||||
|
ensuite par exemple envisager de compiler `nginx` (vous trouverez les sources
|
||||||
|
du projet : <http://nginx.org/download>).
|
||||||
|
|
||||||
|
Dans tous les cas, votre `Dockerfile` devra être facilement maintenable
|
||||||
|
(notamment en cas de nouvelle version du serveur web), et vous devrez apporter
|
||||||
|
une attention particulière au suivi des bonnes pratiques d'écriture des
|
||||||
|
`Dockerfile`.
|
||||||
|
|
||||||
|
## Exemple d'exécution
|
||||||
|
|
||||||
|
<div lang="en-US">
|
||||||
|
```
|
||||||
|
42sh$ docker image build -t countdown countdown
|
||||||
|
42sh$ docker container run -d -P countdown
|
||||||
|
42sh$ firefox http://localhost:32198/42:23
|
||||||
|
```
|
||||||
|
</div>
|
43
subject/nginx-static/rendu.md
Normal file
43
subject/nginx-static/rendu.md
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
Rendu
|
||||||
|
=====
|
||||||
|
|
||||||
|
Modalités de rendu
|
||||||
|
------------------
|
||||||
|
|
||||||
|
En tant que personnes sensibilisées à la sécurité des échanges électroniques,
|
||||||
|
vous devrez m'envoyer vos rendus signés avec votre clef PGP.
|
||||||
|
|
||||||
|
Un service automatique s'occupe de réceptionner vos rendus, de faire des
|
||||||
|
vérifications élémentaires et de vous envoyer un accusé de réception (ou de
|
||||||
|
rejet).
|
||||||
|
|
||||||
|
Ce service écoute sur l'adresse <virli@nemunai.re>, c'est donc à cette adresse
|
||||||
|
et exclusivement à celle-ci que vous devez envoyer vos rendus. Tout rendu
|
||||||
|
envoyé à une autre adresse et/ou non signé et/ou reçu après la correction ne
|
||||||
|
sera pas pris en compte.
|
||||||
|
|
||||||
|
Par ailleurs, n'oubliez pas de répondre à
|
||||||
|
[l'évaluation du cours](https://www.epitaf.fr/moodle/mod/quiz/view.php?id=307).
|
||||||
|
|
||||||
|
|
||||||
|
Tarball
|
||||||
|
-------
|
||||||
|
|
||||||
|
Tous les fichiers identifiés comme étant à rendre sont à placer dans une
|
||||||
|
tarball (pas d'archive ZIP, RAR,\ ...).
|
||||||
|
|
||||||
|
Voici une arborescence type (vous pourriez avoir des fichiers supplémentaires,
|
||||||
|
cela dépendra de votre avancée dans le projet) :
|
||||||
|
|
||||||
|
<div lang="en-US">
|
||||||
|
```
|
||||||
|
login_x-project_2/
|
||||||
|
login_x-project_2/Dockerfile
|
||||||
|
(login_x-project_2/nginx.conf)
|
||||||
|
(login_x-project_2/countdown.html)
|
||||||
|
```
|
||||||
|
</div>
|
||||||
|
|
||||||
|
Les deux fichiers `nginx.conf` et `countdown.html` seront écrasés par
|
||||||
|
les fichiers fournis lors de la correction, vous n'êtes pas donc
|
||||||
|
obligés de les embarquer dans votre rendu.
|
6
subject/nginx-static/subject.md
Normal file
6
subject/nginx-static/subject.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
title: Virtualisation légère -- Projet n^o^ 2
|
||||||
|
author: Pierre-Olivier *nemunaire* Mercier
|
||||||
|
institute: EPITA
|
||||||
|
date: EPITA -- SRS 2020
|
||||||
|
...
|
Loading…
x
Reference in New Issue
Block a user