{"id":6965,"date":"2026-03-12T16:56:37","date_gmt":"2026-03-12T15:56:37","guid":{"rendered":"https:\/\/workboot.fr\/ciela\/?page_id=6965"},"modified":"2026-03-19T14:33:01","modified_gmt":"2026-03-19T13:33:01","slug":"tp1_docker_apache","status":"publish","type":"page","link":"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/","title":{"rendered":"TP1_Docker_web_apache"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\ud83d\udd52 : 3 h maximum<\/p>\n\n\n\n<nav aria-label=\"Table des mati\u00e8res\" class=\"wp-block-table-of-contents\"><ol><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#prerequis\">Pr\u00e9requis:<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#but\">But:<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#repertoire-de-travail\">R\u00e9pertoire de travail:<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#presentation-du-tp\">Pr\u00e9sentation du TP<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#on-va-fabriquer-et-lancer-notre-docker\">On va fabriquer et lancer notre Docker <\/a><ol><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#construire-avec-la-commande-build\">Construire avec la commande build<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#lancer-notre-docker\">Lancer notre docker<\/a><\/li><li><a class=\"wp-block-table-of-contents__entry\" href=\"https:\/\/workboot.fr\/ciela\/tp1_docker_apache\/#se-connecter-au-docker\">Se connecter au docker<\/a><\/li><\/ol><\/li><\/ol><\/nav>\n\n\n\n<h2 id=\"prerequis\" class=\"wp-block-heading\">Pr\u00e9requis:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/workboot.fr\/ciela\/tp0_docker\/\" type=\"page\" id=\"6900\">TP0_Docker<\/a> et <a href=\"https:\/\/workboot.fr\/ciela\/conteneur-ou-docker\/\" type=\"page\" id=\"6897\">cours Docker<\/a><\/p>\n\n\n\n<h2 id=\"but\" class=\"wp-block-heading\">But:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">installer un serveur apache dans un conteneur que l&rsquo;on pourra reproduire sans difficult\u00e9.<\/p>\n\n\n\n<h2 id=\"repertoire-de-travail\" class=\"wp-block-heading\">R\u00e9pertoire de travail:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\/~\/works\/TP1_Docker<\/p>\n\n\n\n<h2 id=\"presentation-du-tp\" class=\"wp-block-heading\">Pr\u00e9sentation du TP<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Le conteneur Docker va nous permettre de faire fonctionner un serveur WEB Apache,  <\/li>\n\n\n\n<li>on va partager ici le r\u00e9pertoire du docker <strong>\/var\/http\/www<\/strong> avec un r\u00e9pertoire de la machine h\u00f4te qui nous permettra d&rsquo;utiliser facilement notre Docker.<\/li>\n\n\n\n<li>on va rediriger le port 80 du docker vers le port 8080 ici pour notre TP , on obtiendra une site accessible en local !  (firefox, chrome, chromium&#8230;)<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2026\/03\/docker_web_1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"759\" height=\"422\" src=\"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2026\/03\/docker_web_1.png\" alt=\"\" class=\"wp-image-6968\" srcset=\"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2026\/03\/docker_web_1.png 759w, https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2026\/03\/docker_web_1-300x167.png 300w\" sizes=\"auto, (max-width: 759px) 100vw, 759px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Dans le r\u00e9pertoire TP1_Docker r\u00e9aliser un r\u00e9pertoire <strong>site_apache<\/strong> dans lequel on va mettre un fichier index.html<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">fichier index.html:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;!DOCTYPE html&gt;\n&lt;html&gt;\n&lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;title&gt;Mon serveur Debian&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;h1&gt;\u2705 Apache fonctionne sur Debian 12 !&lt;\/h1&gt;\n    &lt;p&gt;Ce fichier vient du dossier partag\u00e9 \"site_apache\"&lt;\/p&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n\n\n\n<h2 id=\"on-va-fabriquer-et-lancer-notre-docker\" class=\"wp-block-heading\">On va fabriquer et lancer notre Docker <\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">on a besoin d&rsquo;un d&rsquo;un fichier <strong>Dockerfile<\/strong> pour la r\u00e9aliser ce Docker ,  dans le r\u00e9pertoire TP1_DOCKER_APACHE<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">on va simplement partir d&rsquo;une base de docker  debian:12 et y installer ce qu&rsquo;il faut \u00e0 l&rsquo;int\u00e9rieur .<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \u00c9TAPE 1 : On part d'une Debian 12 toute propre\nFROM debian:12\n\n# \u00c9TAPE 2 : On met \u00e0 jour les paquets et on installe Apache\n# apt-get update = met \u00e0 jour la liste des paquets disponibles\n# -y = dit \"oui\" automatiquement aux questions\nRUN apt-get update &amp;&amp; \\\n    apt-get install -y apache2 &amp;&amp; \\\n    # Nettoie pour r\u00e9duire la taille de l'image\n    apt-get clean\n\n# \u00c9TAPE 3 : On configure Apache pour qu'il reste actif\n# En Docker, un programme doit rester au premier plan\n# Apache2ctl est la commande de contr\u00f4le d'Apache\nCMD &#91;\"\/usr\/sbin\/apache2ctl\", \"-D\", \"FOREGROUND\"]\n\n# On indique que le conteneur utilise le port 80\nEXPOSE 80\n<\/code><\/pre>\n\n\n\n<h3 id=\"construire-avec-la-commande-build\" class=\"wp-block-heading\">Construire avec la commande build<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Construit l'image \u00e0 partir du Dockerfile\n# -t = tag (nom) qu'on donne \u00e0 l'image\ndocker build -t debian12-apache .\n<\/code><\/pre>\n\n\n\n<h3 id=\"lancer-notre-docker\" class=\"wp-block-heading\">Lancer notre docker<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Lance un conteneur \u00e0 partir de notre image\ndocker run -d \\\n  --name serveur-web \\\n  -p 8080:80 \\\n  -v $(pwd)\/site_apache:\/var\/www\/html \\\n  debian12-apache\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>-d          : pour detach\n--name      : pour lui donner un nom \u00e0 nous (pas par docker qui pourtant nous propose des noms sympas!)\n-p 8080:80  : dirige le port 8080 vers le port 80 du Docker\n-v          : pour partager le r\u00e9pertoire<\/code><\/pre>\n\n\n\n<h3 id=\"se-connecter-au-docker\" class=\"wp-block-heading\">Se connecter au docker<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>docker exec -it serveur-web bash\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">R\u00e9aliser une sauvegarde du docker et le remettre en oeuvre sur une autre machine.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\ud83d\udd52 : 3 h maximum Pr\u00e9requis: TP0_Docker et cours Docker But: installer un serveur apache dans un conteneur que l&rsquo;on pourra reproduire sans difficult\u00e9. R\u00e9pertoire de travail: \/~\/works\/TP1_Docker Pr\u00e9sentation du TP Dans le r\u00e9pertoire TP1_Docker r\u00e9aliser un r\u00e9pertoire site_apache dans lequel on va mettre un fichier index.html fichier index.html: On va fabriquer et lancer notre [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-6965","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"admin","author_link":"https:\/\/workboot.fr\/ciela\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"\ud83d\udd52 : 3 h maximum Pr\u00e9requis: TP0_Docker et cours Docker But: installer un serveur apache dans un conteneur que l&rsquo;on pourra reproduire sans difficult\u00e9. R\u00e9pertoire de travail: \/~\/works\/TP1_Docker Pr\u00e9sentation du TP Dans le r\u00e9pertoire TP1_Docker r\u00e9aliser un r\u00e9pertoire site_apache dans lequel on va mettre un fichier index.html fichier index.html: On va fabriquer et lancer notre\u2026","_links":{"self":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/6965","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/comments?post=6965"}],"version-history":[{"count":15,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/6965\/revisions"}],"predecessor-version":[{"id":7091,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/6965\/revisions\/7091"}],"wp:attachment":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/media?parent=6965"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}