Installation

Documentation d’installation de la PFI

La DevBox-Sante PFI a besoin d’accéder à un service de base de données MongoDB ainsi qu’à l’antivirus Clamav.

La DevBox-Sante PFI est un serveur qui peut être configuré sur différents protocoles de communication :

  • mllp
  • sftp
  • file

Docker Compose

Pour une installation de la Devbox-santé, il faut mettre en place 4 services :

  • mongodb : persistance des données (traces)
  • clamav : antivirus
  • pfi : serveur de la pfi
  • back-office : outil d’administration et de visualisation des traces

Tout cela Au sein d’un meme réseau : pfi-network protégé.

!theme aws-orange

package "Docker pfi-network" {
  component "pfi-back-office" as bo
  database mongodb as db
  component "pfi-server" as pfi
  component "clamav" as av
}

component "DPI" as dpi
actor "BO_administrateur" as bo_admin

pfi -> db 
bo -> db
pfi -> av

dpi -u-> pfi : protocol mllp/sftp/file
bo_admin -u-> bo : http/8282

Un bon point de départ est ce fichier compose.yml :


name: devboxsante-pfi-default

services:
  mongodb:
    image: mongo:8.2.3
    container_name: pfi-default-mongodb
    networks:
      - pfi_network
    volumes:
      - /host_root_path/pfi/mongodb:/data/db  # contient les fichiers de la base pour sauvegarde
    restart: unless-stopped

  clamav:
    image: clamav/clamav:1.5.1
    container_name: pfi-default-clamav
    networks:
      - pfi_network
    volumes:
      -  /host_root_path/pfi/clamav-db:/var/lib/clamav
    restart: unless-stopped

  pfi:
    image: devboxsante/devboxsante-pfi-server:dev
    container_name: pfi-default-server
    depends_on:
      - mongodb
    ports:
      - "22222:22222"  # en cas de protocole réseau de l'intermediation (mllp, sftp)
    networks:
      - pfi_network
    volumes:
      - /host_root_path/pfi/server/config:/config  # contient la config springframework (application.yml)
      - /host_root_path/pfi/server/files:/server/files # contient les fichiers hl7 en cas de protocole file 
    environment:
      JAVA_OPTS: "-Xms1024M -Xmx1536M"
      MONGO_DB_URI: "mongodb://mongodb:27017/pfi"
      
      DEVBOX_LM_TOKEN: ${DEVBOX_LM_TOKEN}
      DEVBOX_LM_CLIENT: ${DEVBOX_LM_CLIENT}
      #  autres variables d'environnement cf. la page de configuration 
    restart: on-failure:2

  back-office:
    image: devboxsante/devboxsante-pfi-backoffice:dev
    container_name: pfi-default-backoffice
    ports:
      - "8282:8282"
    networks:
      - pfi_network
    environment:
       MONGO_DB_URI: "mongodb://mongodb:27017/pfi"

networks:
  pfi_network:

Bien sûr, il faudra veiller à le personnaliser et le configurer en fonction du besoin et des différentes intermediations.

Notamment, le host_root_path qui contiendra les différents volumes partagés sur le système de fichiers hôte.