This commit is contained in:
nemunaire 2014-11-27 22:25:24 +01:00
parent 4394048d74
commit 5578b501a3
1 changed files with 68 additions and 0 deletions

68
subject/subject.md Normal file
View File

@ -0,0 +1,68 @@
# Introduction
## Présentation du sujet
Durant ces prochaines heures, vous allez devoir réaliser un service de
déploiement de machines virtuelles, mettant en pratique les connaissances que
vous avez acquises durant le cours et le TP.
N'oublier pas de lire le sujet en entier, plusieurs fois, avant de
commencer. Vous n'êtes pas forcément tenu de réaliser les étapes dans l'ordre.
L'utilisation d'un gestionnaire de version est fortement recommandé.
## Modalités de rendu
## Notation
Chaque partie du sujet rapporte un certain nombre de points tenant compte de la
difficulté.
L'accent sera mis sur le respect des bonnes pratiques.
# Interface utilisateur
La première étape est de réaliser l'interface avec laquelle les utilisateurs
vont utiliser votre service.
Le langage (et le framework si besoin) est laissé à votre discrétion parmi
[Perl Dancer](https://metacpan.org/pod/Dancer),
[Python Django](http://djangoproject.com/) ou encore [PHP](http://php.net/).
Vous allez avoir besoin d'une base de données (MySQL/MariaDB ou PostgreSQL)
pour stocker la liste des conteneurs lancés, de leurs configuration, des images
disponibles, des utilisateurs, etc.
L'interface pourra prendre la forme d'une simple API ou de formulaires
classiques. Chaque étape de ce sujet donne généralement lieu à une série de
pages.
Il est attendu pour cette étape que vous rendiez un ou plusieurs `Dockerfile`,
accompagnés d'un script permettant de construire les images et de lancer une
première fois votre site.
# Recettes de déploiement (bonus)
Concevez les recettes de déploiement à destination d'un gestionnaire de
configuration (tel qu'[Ansible](http://docs.ansible.com/)) pour construire les
images des conteneurs et configurer la machine qui exécutera votre service.
# Gestion d'un conteneur
Pour cette étape, votre site doit être en mesure de lancer et arrêter des
containers (nous vous laissons le choix de la technologie).
## Basique
Lancer les containers
## Un peu plus de sécurité
# Quota disque
# Bridge