development:docker_overview

docker run -it debian bash

Lance le programme bash dans un nouveau container1) créé à partir de l'image2) debian.


docker run -it --name spingler centos bash

Lance le programme bash dans un container nommé arbitrairement spingler à partir de l'image centos.


 docker ps -a 

Lister tous les containers, ceux en exécution et ceux en arrêt.


docker exec spingler ls

Exécute dans le container nommé spingler la commande ls.


docker exec -it spingler bash

Exécute de manière interactive le programme bash dans le container nommé spingler.

Docker est l'outil privilégié pour faire tourner les services.

Odoo par exemple est déployé sous docker à l'aide de docker-compose.

docker-compose est un programme qui utilise un fichier yaml pour lancer et faire la coordination entre les containers nécessaires au fonctionnement de l'application Odoo.

Ci-dessous un fichier yaml type pour faire tourner un container Odoo avec un container Postgresql.

docker-compose.yml
version: "3"
services:
  odoo:
    image: odoo:14.0
    container_name: myodoo
    depends_on:
      - db
    ports:
      - "8069:8069"
    environment:
      - DB_ENV_POSTGRES_USER=odoo
      - DB_ENV_POSTGRES_PASSWORD=odoo
    links:
      - db:db

  db:
    image: postgres:10.0
    container_name: myodoo_db
    environment:
      - POSTGRES_USER=odoo
      - POSTGRES_PASSWORD=odoo

En exécutant la commande docker-compose up dans un dossier où se trouve ce fichier docker-compose.yml, deux containers seront lancés.

Le premier container myodoo_db sera créé à partir de l'image postgres:10.0. Au premier lancement de ce container de base de données, un utilisateur odoo sera créé avec un mot de passe odoo.

Le deuxième container nommé myodoo sera lancé par la suite à partir de l'image odoo:14.0. L'application Odoo s'exécutant dans le container myodoo se connectera à l'application Postgresql s'exécutant dans le container myodoo_db avec l'utilisateur odoo et le mot de passe odoo. Enfin, l'application odoo sera accessible sur http://localhost:8069


1)
Un container est une sorte de machine virtuelle allégée
2)
Une image est une sorte de modèle inactif de machine virtuelle à partir duquel un container sera créé
  • development/docker_overview.txt
  • Last modified: 2022/10/26 09:35
  • by aziz