Images Docker

Cette procédure va vous guider pas à pas dans l'installation de l'image docker Maarch.

Prérequis

Afin d'utiliser une image Docker d'un logiciel Maarch, vous devez tout d'abord télécharger et installer le logiciel Docker pour votre système d’exploitation.

Image Maarch

Une fois Docker installé, vous devez télécharger l'image Maarch. Toutes nos images sont disponibles à https://hub.docker.com/u/maarch/.

Vous pouvez y trouver les images suivantes :

  • maarchrm - Notre Système d'Archivage Électronique (pour les besoins du secteur privé) - Maarch RM ;
  • maarchrmap - Notre Système d'Archivage Électronique avec son extension « archives publiques » (pour les besoins du secteur public) - Maarch RM AP ;
  • maarchcourrier - Notre logiciel de gestion des courriers - Maarch Courrier.

Pour télécharger une image, la commande à exécuter dans votre terminal est :

  • Pour Maarch RM :

      docker pull maarch/maarchrm:latest
    
  • Pour Maarch RM avec son extension archive publique :

      docker pull maarch/maarchrmap:latest
    
  • Pour Maarch Courrier :

      docker pull maarch/maarchcourrier:latest
    

Une fois l'image téléchargée, il faut créer un container qui comportera l'instance émanant de cette dernière.

Pour ce faire, deux options s'ouvrent à vous :

  • Création d'un container avec une adresse IP fixe

      docker run --name {nom de votre instance} -d -p {adresse IP}:8080:80 maarch/{nom de l'image}
    
  • Création d'un container avec une adresse IP dynamique

      # docker run --name {nom de votre container} -d maarch/{nom de l'image}
      docker run --name maarchrmap -d maarch/maarchrmap:latest
    

Cela vous a créé un nouveau container de l'application en mode démon et ayant comme nom, le nom passé en argument.

Cependant, dans le deuxième cas, vous aurez besoin de la commande suivante pour récupérer l'adresse IP du container :

# docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' {nom de votre container}
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' maarchrmap

Félicitations ! vous pouvez maintenant accéder à votre instance directement à partir de votre navigateur en tapant l'adresse IP du container.

Commandes docker

Voici quelques commandes utiles dans la gestion des images et des containers.

  • Lister les images téléchargées

      docker images
    
  • Supprimer une image

      docker rmi {nom de l'image}:{version}
    
  • Lister les containers actifs

      docker ps
    
  • Lister tous les containers

      docker ps -a
    
  • Lancer un container

      docker start {nom de votre container}
    

Attention ! Il ne faut pas confondre docker run et docker start. Le run créé un container à partir d'une image et l’exécute. Le start exécute un container DÉJÀ existant.

  • Se connecter à un container

      docker exec -ti {nom de votre container} /bin/bash
    
  • Arrêter un container

      docker kill {nom de votre container}
    
  • Supprimer un container

      docker rm {nom de votre container}
    

NOTA: Si vous êtes réfractaire aux lignes de commandes, vous pouvez utiliser le logiciel https://www.portainer.io/ qui vous aidera à gérer vos images et vos conteneurs pour effectuer les étapes suivantes.

Sources des docker files et installation des produits Maarch sans docker

Pour générer les images docker, nous partons d'un fichier docker file.

Ces fichiers sont hébergés sur notre gitlab : https://labs.maarch.org/maarch/dockerfiles.

Si vous souhaitez installer les produits Maarch, vous pouvez vous servir des commandes inscrites dans les dockerfiles sur un de vos serveurs vierge.

Ex. de contenu d'un fichier docker file :

...
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y \
  apache2 \
  curl \
  default-jre \
  git \
  imagemagick \
  ghostscript \
  p7zip-full \
  php-pclzip \
  php-pear \
  php7.0 \
  php7.0-cli \
  php7.0-common \
  php7.0-gd \
  php7.0-mcrypt \
  php7.0-pgsql \
  php7.0-readline \
  php7.0-xsl \
  php7.0-zip \
  php7.0-curl \
  php7.0-mbstring \
  postgresql \
  postgresql-client \
...

results matching ""

    No results matching ""