Créer une image docker pour le mkframework
Introduction
Pour ceux qui ne connaisse pas docker je les invite à se rendre sur leur site https://www.docker.comDans ce tutoriel nous allons voir comment mettre en place une installation docker pour pouvoir developper facilement avec le mkframework
Installation de docker
Installons d'abord dockerSous GNU/Linux:
curl -sSL https://get.docker.com/ | sh
note: vous pouvez l'installer sous windows et mac
Création du DockerFile
Vous pouvez créer un nouveau conteneur en créant un fichier DockerFileCréer un répertoire "imageWebPhp5 puis ajouter un fichier DockerFile avec le code suivant
# This is a comment
FROM debian:jessie
MAINTAINER mika <mika@localhost>
RUN apt-get update && apt-get install -y apache2 git php5 php5-mysql libapache2-mod-php5
RUN a2enmod php5
RUN rm /var/www/html/* -f
RUN git clone https://github.com/imikado/mkframeworkPackage /var/www/html/
RUN chmod 777 -R /var/www/html/Projects/
CMD /usr/sbin/apache2ctl -D FOREGROUND
EXPOSE 80
Ici comme vous pouvez le voir
- on installe un serveur web apache,
- on active php5
- on fait le ménage dans le repertoire web
- on installe le framework dans ce repertoire web
- on démarre le serveur web apache en fond
Enfin on indique d'exposer le port 80 (utilisé par le serveur web apache)
C'est à dire que notre conteneur écoutera sur le port 80, tous les autres ports ne seront pas accessible depuis notre ordinateur.
On peut construire l'image avec un simple
docker build .
Vous devriez voir docker construire le container et fini ainsi:
Successfully built IDreference
On peut ajouter un tag afin de simplifier l'usage plutot que de devoir taper cette suite de chiffre et lettre
Pour cela, listons les images avec
docker images
qui donnerait par exemple
mika@mika-Latitude-3340:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> 65130b01d0ff 5 hours ago 235.5 MB
debian jessie 73e72bf822ca 5 weeks ago 123 MB
ici on souhaiterais faire un tag mkf plutot que d'utiliser 65130b01d0ff
on ferait avec cet exemple ainsi: (à adapter avec votre ID de conteneur bien sur)
docker tag 65130b01d0ff mkf
Docker va créer un tag mkf:latest
Pour lancer notre conteneur, vous pouvez faire un simple
docker run -d mkf:latest
Vous lancez ainsi en tache de fond votre conteneur fraichement créé