---
# System prepended metadata

title: '***Docker Ubuntu***'

---

# ***Docker Ubuntu***

+ ***Installer Docker et Docker compose*** : 

        * sudo apt install docker docker-compose 

---
        
        * docker image ls 
        
+ ***Nous n'avons pas la permission de nous connecter au démon docker local, nous pouvons résoudre ce probléme en créant un nouveau groupe qui aura les privilèges d'ecécuter un docker afin que nous puisson***: 

        * sudo groupadd docker 
        * sudo usermod -aG docker $USER 
        * newgrp docker 
        * docker image ls 
        * docker run hello-world 
        * docker image ls 
        * docker ps 
        
+ ***Pour supprimer l'image c'est la commmand suivant***: 

        * docker rmi image hello-world:latest 
        - hello-world = repository 
        - latest = Tag 
        
+ ***Cliquons sur entrer nous voyons que nous ne peuvont pas le supprimer car nous aurons un conteneur qui utilise l'image, si nous levons les conteneurs nous ne le voyons rien mais avec la command suivant***:
        
        *  docker container ls -a
    
Nous voyons les containers créés qui sont sortir donc c'est bien utiliser cette command cela vous montre tous les types de conteneurs et nous voyons aui utilise notre image.

+ ***Supprimer le container***:

        * docker container rm relaxed_cray
        * docker rmi hello-world:latest 

+ ***Si on listons les containers nous voyons***:

        * docker container ls -a 
        * docker image ls -a 

## ***Deployer Container Docker Php et Apahce   

+ ***Crée un nouveau directory***: 

        * mkdir projet
        * cd projet 

### ***Deployer Docker - compose***

        * nano docker-compose.yml 
            
``` consol 

version: '3.9'
services:
  web: 
    container_name: php2
    image: php:7.4-apache
    volumes:
      - ./php/var/www/html/
    ports:
      - 8080:80

```

        * docker-compose up
        
- PROBLEM - 404 502 

### ***Deployer index.php***
        * ls 
        * php 
        * nano index.php 

```consol
<?php

echo "Hola mondo!!";

?> 

``` 
      
      * ls -la
      * cd ..
      * ls -la
      * sudo chown nevyan:nevyan php/ -R
      * ls -la 
      * nano index.php 

```consol
<?php

echo "Hola mondo!!";

?> 

```
      * cd ..
      * docker-compose up
      
      
### ***Deployer Dockerfile*** 

      * cd php/
      * ls 
      * nano Dockerfile
      
``` consol 

FROM php:7.4-apache 
RUN apt-update && apt-get upgrade -y 
RUN docker-php-ext-install mysqli
EXPOSE 80

``` 
  
 Modifié le nano docker-compose par rapport a Dockerfile. 
 
        * nano docker-compose.yml                                                                                       
