0 Abonnés · 62 Publications

Docker est une technologie logicielle fournissant des conteneurs, mis en place par la société Docker, Inc. Docker fournit une couche supplémentaire d'abstraction et d'automatisation de la virtualisation au niveau du système d'exploitation sur Windows et Linux.

Article Pierre LaFay · Fév 25, 2024 3m read

Je souhaite aborder les problèmes désagréables liés à la lecture d'un texte plat en ASCII, UTF*
excluant explicitement HTML, EBCDIC, et autres encodages.
D'après Wikipediail existe au moins 8 variantes de caractères de contrôle.

  • CR+LF est typique de Windows
  • LF est typique du monde Linux/UNIX
  • CR est le préféré de Mac

Comme vous pouvez le déduire des noms, l'inspiration vient des machines à écrire mécaniques.

Dans IRIS* comme dans Caché ou Ensemble ou ... les classes %Stream* et %File* offrent la même propriété avec la même valeur par défaut.

1
0 82
Article Sylvain Guilbaud · Fév 16, 2024 2m read

Lorsqu'il s'agit de créer une image d'IRIS, nous pouvons utiliser les fichiers merge.cpf.

Voici un exemple de merge.cpf :

[Actions]
CreateDatabase:Name=IRISAPP_DATA,Directory=/usr/irissys/mgr/IRISAPP_DATA

CreateDatabase:Name=IRISAPP_CODE,Directory=/usr/irissys/mgr/IRISAPP_CODE

CreateNamespace:Name=IRISAPP,Globals=IRISAPP_DATA,Routines=IRISAPP_CODE,Interop=1

ModifyService:Name=%Service_CallIn,Enabled=1,AutheEnabled=48

CreateApplication:Name=/frn,NameSpace=IRISAPP,DispatchClass=Formation.REST.Dispatch,AutheEnabled=48

ModifyUser:Name=SuperUser,PasswordHash=a31d24aecc0bfe560a7e45bd913ad27c667dc25a75cbfd358c451bb595b6bd52bd25c82cafaa23ca1dd30b3b4947d12d3bb0ffb2a717df29912b743a281f97c1,0a4c463a2fa1e7542b61aa48800091ab688eb0a14bebf536638f411f5454c9343b9aa6402b4694f0a89b624407a5f43f0a38fc35216bb18aab7dc41ef9f056b1,10000,SHA512
0
0 85
Article Sylvain Guilbaud · Jan 30, 2024 4m read

Traitement des ressources FHIR avec FHIR SQL BUILDER pour prédire la probabilité de développer une hépatite C

Avec le développement de la technologie, l'industrie médicale progresse également constamment et les humains accordent souvent plus d'attention à leur propre santé.
En apprenant et en traitant des ensembles de données par ordinateur, les maladies peuvent être prédites.

Prérequis: Capacité à utiliser FHIR et ML

2
0 68
Article Sylvain Guilbaud · Jan 30, 2024 5m read

Qu'est-ce qu'une image Docker?

Dans ce deuxième article sur les principes fondamentaux des conteneurs, nous examinons ce que sont les images de conteneurs.

Une image Docker est simplement une représentation binaire d'un conteneur.

Un conteneur en cours d'exécution ou simplement un conteneur est l'état d'exécution de l'image du conteneur associée.

Pour plus d'information, n'hésitez pas à lire l'article qui explique ce qu'est un conteneur.

0
0 287
Article Sylvain Guilbaud · Jan 29, 2024 7m read

InterSystems prend en charge l'utilisation des images InterSystems IRIS Docker qu'il fournit sous Linux uniquement. Plutôt que d'exécuter des conteneurs en tant que processus natifs, comme sur les plateformes Linux, Docker pour Windows crée une VM Linux fonctionnant sous Hyper-V, le virtualiseur Windows, pour héberger les conteneurs. Ces couches supplémentaires ajoutent une complexité qui empêche InterSystems de prendre en charge Docker pour Windows pour le moment.

0
0 79
Article Pierre LaFay · Jan 7, 2024 3m read

Le sous-système Windows pour Linux (WSL) est une fonctionnalité de Windows qui vous permet d'exécuter un environnement Linux sur votre ordinateur Windows, sans avoir besoin d'une machine virtuelle distincte ni d'un double démarrage.

WSL est conçu pour offrir une expérience transparente et productive aux développeurs qui souhaitent utiliser à la fois Windows et Linux**.

0
0 112
Article Guillaume Rongier · Déc 7, 2023 7m read

Dans cette série d'articles, j'aimerais présenter et discuter de plusieurs approches possibles pour le développement de logiciels avec les technologies d'InterSystems et GitLab. J'aborderai des sujets tels que:

  • Git 101
  • Flux Git (processus de développement)
  • Installation de GitLab
  • Flux de travail GitLab
  • Diffusion continue
  • Installation et configuration de GitLab
  • GitLab CI/CD
  • Pourquoi des conteneurs?
  • Infrastructure de conteneurs
  • GitLab CI/CD utilisant des conteneurs

Dans le premier article, nous avons évoqué les notions de base de Git, les raisons pour lesquelles une compréhension approfondie des concepts de Git est importante pour le développement de logiciels modernes et la manière dont Git peut être utilisé pour développer des logiciels.

Dans le deuxième article, nous avons évoqué le flux de travail GitLab - un processus complet du cycle de vie du logiciel ainsi que Diffusion continue.

Dans le troisième article, nous avons évoqué l'installation et la configuration de GitLab et la connexion de vos environnements à GitLab

Dans le quatrième article, nous avons écrit une configuration de CD.

Dans le cinquième article, nous avons parlé des conteneurs et de la manière dont ils peuvent être utilisés (et pour quelles raisons).

Dans cet article, nous allons discuter des principaux composants dont vous aurez besoin pour exécuter un pipeline de diffusion continue avec des conteneurs et de la façon dont ils fonctionnent tous ensemble.

0
0 434
Article Guillaume Rongier · Déc 4, 2023 6m read

Dans cette série d'articles, j'aimerais présenter et discuter de plusieurs approches possibles pour le développement de logiciels avec les technologies d'InterSystems et GitLab. J'aborderai des sujets tels que :

  • Git 101
  • Flux Git (processus de développement)
  • Installation de GitLab
  • Flux de travail GitLab
  • Diffusion continue
  • Installation et configuration de GitLab
  • GitLab CI/CD
  • Pourquoi les conteneurs?
  • GitLab CI/CD utilisant des conteneurs

Dans le premier article, nous avons évoqué les notions de base de Git, les raisons pour lesquelles une compréhension approfondie des concepts de Git est importante pour le développement de logiciels modernes et la manière dont Git peut être utilisé pour développer des logiciels.

Dans le deuxième article, nous avons évoqué le flux de travail GitLab - un processus complet du cycle de vie du logiciel ainsi que Diffusion continue.

Dans le troisième article,  nous avons évoqué l'installation et la configuration de GitLab et la connexion de vos environnements à GitLab

Dans le quatrième article, nous avons écrit une configuration de CD.

Dans cet article, nous parlerons des conteneurs et de la manière dont ils peuvent être utilisés (et pour quelles raisons).

0
0 83
Article Guillaume Rongier · Nov 23, 2023 9m read

Dans cette série d'articles, j'aimerais présenter et discuter de plusieurs approches possibles pour le développement de logiciels avec les technologies d'InterSystems et GitLab. J'aborderai des sujets tels que:

  • Git 101
  • Le flux Git (processus de développement)
  • Installation de GitLab
  • Flux de travail GitLab
  • Diffusion continue
  • Installation et configuration de GitLab
  • GitLab CI/CD

Dans l'article précédent, nous avons évoqué les notions de base de Git, les raisons pour lesquelles une compréhension approfondie des concepts de Git est importante pour le développement de logiciels modernes et la manière dont Git peut être utilisé pour développer des logiciels. Et bien que nous nous soyons concentrés sur la partie mise en œuvre du développement de logiciels, cette partie présente :

  • Le flux de travail GitLab est un processus complet du cycle de vie d'un logiciel, allant de l'idée au retour utilisateur
  • Diffusion continue est une approche d'ingénierie logicielle dans laquelle les équipes produisent des logiciels en cycles courts, garantissant que le logiciel peut être diffusé de manière fiable à tout moment. Elle vise à créer, tester et publier des logiciels plus rapidement et plus fréquemment.
0
0 181
Question Cyril Grosjean · Nov 15, 2023

Bonjour,

Dans le besoin de notre service infrastructure de notre entreprise, j'ai créé une petite API qui fait des requêtes SNMP sur InterSystems afin de visualiser les données intéressantes à récupérer lorsque l'infra mettra en place le monitoring.

Cependant, j'ai un timeout lorsque j'essaye de collecter des informations via un walk. Voici le code du service SNMP de mon API:

7
0 127
Article Guillaume Rongier · Nov 20, 2023 7m read

Tout le monde dispose d'un environnement de test.

Certains ont la chance de disposer d'un environnement totalement séparé pour la production.

-- Inconnu

.

Dans cette série d'articles, j'aimerais présenter et discuter de plusieurs approches possibles pour le développement de logiciels avec les technologies d'InterSystems et GitLab. J'aborderai des sujets tels que:

  • Git 101
  • Git flow (processus de développement)
  • Installation de GitLab
  • Flux de travail GitLab WorkFlow
  • GitLab CI/CD
  • CI/CD avec des conteneurs

Cette première partie traite de la pierre angulaire du développement logiciel moderne - le système de contrôle de version Git et divers flux Git.

0
0 215
Article Iryna Mykhailova · Oct 11, 2023 2m read

Nous poursuivons notre série d'articles basés sur l'application QuinielaML.

Dans cet article, je décrirai comment travailler avec la fonctionnalité Embedded Python disponible dans les produits InterSystems.

Embedded Python nous permet d'utiliser Python comme langage de programmation dans nos productions, en profitant de toutes les fonctionnalités qu'offre Python. Ici vous pouvez trouver plus d'informations à ce sujet.

Tout d'abord, rappelons la nature du concepteur de l'architecture de notre projet :

Problème à résoudre

0
0 66
Article Iryna Mykhailova · Oct 6, 2023 5m read

Bienvenue chers membres de la Communauté à la présentation et au premier article d'un petit projet qui présentera les capacités d'InterSystems IRIS à fournir une fonctionnalité de sauvegarde complète pour une application web développée en Angular. Dans cet article, nous nous contenterons de présenter le concept ainsi que les fonctionnalités d'InterSystems IRIS utilisées de manière générale, en allant plus en détail dans les articles suivants.

Bienvenue à QuinielaML !

Introduction

2
0 203
Article Iryna Mykhailova · Sept 25, 2023 6m read

FHIR a transformé le secteur des soins de santé en fournissant un modèle de données normalisé pour la création d'applications de soins de santé et en favorisant l'échange de données entre les différents systèmes de soins de santé. La norme FHIR est basée sur des approches modernes axées sur les API, ce qui la rend plus accessible aux développeurs mobiles et web. Cependant, l'interaction avec les API FHIR peut encore s'avérer difficile, en particulier lorsqu'il s'agit de requêter des données à l'aide du langage naturel.

0
0 78
Article Guillaume Rongier · Sept 8, 2023 6m read

iris-docker-multi-stage-script

Un script python pour garder vos images docker iris en forme ;)

Sans changer votre dockerfile ou votre code vous pouvez réduire la taille de votre image de 50% ou plus !

TL;DR

Nommez l'image de constructeur builder et l'image finale final et ajoutez ceci à la fin de votre fichier Dockerfile :

Modifiez votre fichier Dockerfile pour utiliser une construction multi-étapes :

ARG IMAGE=intersystemsdc/irishealth-community:latest
FROM $IMAGE as builder

Ajoutez ceci à la fin de votre fichier Dockerfile:

FROM $IMAGE as final

ADD --chown=${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} https://github.com/grongierisc/iris-docker-multi-stage-script/releases/latest/download/copy-data.py /irisdev/app/copy-data.py

RUN --mount=type=bind,source=/,target=/builder/root,from=builder \
    cp -f /builder/root/usr/irissys/iris.cpf /usr/irissys/iris.cpf && \
    python3 /irisdev/app/copy-data.py -c /usr/irissys/iris.cpf -d /builder/root/

Boum ! Vous avez terminé !

0
1 47
Article Sylvain Guilbaud · Sept 6, 2023 10m read

Salut la communauté

Dans cet article, nous allons apprendre les sujets ci-dessous répertoriés ci-dessous :

  1. Qu'est-ce que Docker ?
  2. Certains des avantages de Docker
  3. Comment fonctionne Docker ?
  4. Image Docker
  5. Conteneur Docker
  6. Dépôt d'images Docker
  7. Dépôt d'images Docker d'InterSystems
  8. Installation de Docker
  9. Commandes de base de Docker
  10. Exécution de l'édition communautaire IRIS à l'aide de Docker
  11. Interface graphique du bureau Docker

Alors commençons.


1. Qu’est-ce que Docker ?

0
0 304
Article Sylvain Guilbaud · Sept 6, 2023 9m read

Salut la communauté,


Dans mon article précédent, nous avons appris les sujets répertoriés ci-dessous :

  1. Qu’est-ce que Docker ?
  2. Certains des avantages de Docker
  3. Comment fonctionne Docker ?
  4. Image Docker
  5. Conteneur Docker
  6. Dépôt d'images Docker
  7. Dépôt d'images Docker d'InterSystems
  8. Installation de Docker
  9. Commandes de base de Docker
  10. Exécution de l'édition communautaire IRIS à l'aide de Docker
  11. Interface graphique du bureau Docker

Dans cet article, nous aborderons les sujets suivants

  1. Utilisation du fichier Docker Compose (un fichier YAML)
  2. Utilisation du fichier Docker (utilisé pour créer une image Docker)
  3. Utilisation du volume Docker

Alors commençons.

0
0 826
Article Sylvain Guilbaud · Sept 4, 2023 6m read

Lorsque nous démarrons le développement avec IRIS, nous disposons d'un kit de distribution ou, dans le cas de Docker, nous extrayons l'image Docker, puis nous devons souvent l'initialiser et configurer l'environnement de développement. Nous devrons peut-être créer des bases de données, des espaces de noms, activer/désactiver certains services, créer des ressources. Nous devons souvent importer du code et des données dans l'instance IRIS et exécuter du code personnalisé pour lancer la solution.

Il existe de nombreux modèles sur Open Exchange dans lesquels nous suggérons comment initialiser REST, l'interopérabilité, l'analytics, le développement Fullstack et bien d'autres modèles utilisant ObjectScript. Mais qu'en est-il si nous souhaitons utiliser uniquement Python pour configurer l'environnement de développement d'un projet Embedded Python avec IRIS ?

De fait, la récente sortie de Embedded Python template est devenu le passe-partout du pur Python qui pourrait être un point de départ pour les développeurs qui créent des projets Python sans avoir besoin d'utiliser et d'apprendre ObjectScript. Cet article explique comment ce modèle pourrait être utilisé pour initialiser IRIS. C'est parti!

0
0 85
Article Sylvain Guilbaud · Août 24, 2023 9m read

À titre d'exemple d'application en Java fonctionnant avec le dialecte Hibernate pour IRIS, je souhaitais utiliser l'application RealWorld et j'ai trouvé une réalisation pour Quarkus. L'application RealWorld est un exemple d'application proche d'une application réelle, avec des tests déjà préparés pour le backend. La plupart des exemples de réalisations sont à retrouver ici

RealWorld Example App

L'exemple d'application RealWorld est souvent appelé « Wikipédia pour la création d'applications full-stack ». Il sert de prototype standardisé que les développeurs peuvent utiliser pour créer des applications à l'aide de divers langages et frameworks de programmation. L'application fournit un cas d'utilisation réel en imitant une plate-forme de blogs, avec des fonctionnalités telles que l'authentification des utilisateurs, la gestion des profils, la publication d'articles et les commentaires. Avec un ensemble complet de spécifications, y compris une documentation d'API backend prête à l'emploi et des conceptions frontend, il permet aux développeurs de voir comment les mêmes exigences fonctionnelles sont mises en œuvre dans différentes piles technologiques. L'exemple RealWorld est largement utilisé comme outil d'apprentissage et comme référence pour comparer diverses technologies.

Quarkus

Quarkus est un framework Java open source natif de Kubernetes, conçu pour GraalVM et HotSpot. Créé dans le but d'améliorer l'environnement cloud natif moderne, il réduit considérablement l'empreinte et le temps de démarrage des applications Java. Quarkus est connu pour sa philosophie « privilégiant le conteneur », permettant aux développeurs de créer des applications légères et performantes en mettant l'accent sur l'architecture des microservices. Cette flexibilité en a fait un choix populaire pour les organisations cherchant à passer à des plates-formes sans serveur ou basées sur le cloud, combinant des modèles de programmation impératifs et réactifs. Qu'il s'agisse d'une application Web traditionnelle ou d'un système complexe de microservices, Quarkus fournit une plate-forme robuste pour créer des logiciels évolutifs et maintenables.

0
0 100
Article Guillaume Rongier · Août 21, 2023 13m read

Si vous lisez régulièrement les articles publiés dans la Communauté, vous savez qu'en mai de l'année dernière, InterSystems a organisé le JOnTheBeach2023 Hackathon qui s'est tenu à Malaga (Espagne). Le sujet proposé était l'utilisation des outils d'analyse prédictive qu'InterSystems IRIS met à la disposition de tous les développeurs avec IntegratedML. Nous devons remercier @tomdet @Dmitry.Maslennikovpour tout le travail et les efforts qu'ils ont consacrés à faire de cet événement un succès retentissant.

Voici une brève présentation d'IntegratedML

IntegratedML

0
0 76
InterSystems officiel Sylvain Guilbaud · Août 16, 2023

Lorsque IRIS 2023.2 atteindra la disponibilité générale, nous apporterons quelques améliorations à la façon dont nous étiquetons et distribuons les conteneurs IRIS et IRIS for Health.

Les conteneurs IRIS ont été étiquetés en utilisant le format du numéro de build complet, par exemple 2023.1.0.235.1. Les clients ont demandé des balises plus stables, afin qu'ils n'aient pas besoin de modifier leurs fichiers dockerfiles/Kubernetes à chaque nouvelle version. Dans cet esprit, nous apportons les modifications suivantes à la façon dont nous étiquetons les images de conteneurs.

0
0 63
Article Irène Mykhailova · Juin 16, 2023 11m read

Aujourd'hui, la plupart des applications sont déployées sur des services de cloud public. Cela présente de nombreux avantages, notamment des économies de ressources humaines et matérielles, la possibilité de se développer rapidement et à moindre coût, une plus grande disponibilité, une plus grande fiabilité, une évolutivité élastique et des options permettant d'améliorer la protection des actifs numériques. L'une des options les plus populaires est AWS. Nous pouvons y déployer nos applications à l'aide de machines virtuelles (service EC2), de conteneurs Docker (service ECS) ou de Kubernetes

0
0 883
Article Sylvain Guilbaud · Mars 10, 2023 4m read

Ce Template s'agit du modèle de base pour utiliser InterSystems IRIS for Health Community Edition en tant que serveur FHIR.

Il configure un SERVEUR FHIR, importe les données de test, fait la démonstration de l'utilisation de l'API REST avec une simple page web.

Conditions préalables

Assurez-vous que vous avez installé git et Docker desktop.

Installation

IPM

Ouvrez l'installation d'IRIS for Health avec le client IPM installé. Appel dans n'importe quel espace de nom :

USER>zpm "install fhir-server"

Ainsi, le serveur FHIR sera installé dans l'espace de noms FHIRSERVER.

0
0 111
Article Evgeny Shvarov · Mars 8, 2023 7m read

Il s'agit d'un modèle de base pour un environnement de développement permettant de travailler avec ObjectScript dans InterSystems IRIS. Il vous aide à éditer, compiler, commettre/pousser, déboguer et tester votre code ObjectScript. Il aide également à conditionner votre application en tant que module installable avec IPM. Le modèle est compatible avec Embedded Python.

Description

Ce référentiel fournit un environnement de développement prêt à l'emploi pour coder de manière productive avec ObjectScript d'InterSystems. Ce modèle:

0
0 72
Article Sylvain Guilbaud · Fév 15, 2023 8m read

Introduction

Dans un article précédent, j'ai abordé les modèles d'exécution des tests unitaires via le gestionnaire de paquets ObjectScript. Cet article va un peu plus loin, en utilisant les actions GitHub pour piloter l'exécution des tests et la création de rapports. Le cas d'utilisation qui nous motive est l'exécution du CI pour l'un de mes projets Open Exchange, AppS.REST (voir l'article d'introduction à ce projet ici). Vous pouvez voir l'implémentation complète dont les extraits de cet article ont été tirés sur GitHub ; elle pourrait facilement servir de modèle pour l'exécution de l'IC pour d'autres projets utilisant le gestionnaire de paquets ObjectScript.

Les fonctionnalités dont la mise en œuvre a été démontrée comprennent :

  • Compilation et test d'un paquet ObjectScript
  • Rapport sur la mesure de la couverture des tests (en utilisant le paquet TestCoverage) via codecov.io
  • Téléchargement d'un rapport sur les résultats des tests en tant qu'artefact de comppilation.
0
0 99
Article Irène Mykhailova · Fév 13, 2023 7m read

La fonction en tant que service (FaaS) est une catégorie de services de cloud computing qui fournit une plate-forme permettant aux clients de développer, d'exécuter et de gérer des fonctionnalités d'application sans la complexité de la construction et de la maintenance de l'infrastructure généralement associée au développement et au lancement d'une application. Construire une application selon ce modèle est une façon de réaliser une architecture "sans serveur", et est généralement utilisé lors de la construction d'applications microservices.  

Wikipedia

FaaS est une approche extrêmement populaire pour exécuter des charges de travail dans le cloud, permettant aux développeurs de se concentrer sur l'écriture du code.

Cet article vous montrera comment déployer les méthodes d'InterSystems IRIS selon l'approche FaaS.

0
0 82
Article Evgeny Shvarov · Fév 10, 2023 6m read

Salut les développeurs !

Voici encore un court message qui a pour but de simplifier la vie des développeurs. Nous allons maintenant vous expliquer comment faire en sorte que GitHub exécute des tests unitaires à chaque poussée vers le référentiel en ajoutant un seul fichier au référentiel. Gratuitement. Dans le nuage de Github. Ça a l'air génial, n'est-ce pas ?

C'est possible et très facile à faire. Le mérite revient à @Dmitry Maslennikov (et son référentiel), gestionnaire de paquets "ZPM Package Manager", et aux GitHub Actions.  Voyons comment tout cela fonctionne !

Quelque chose pour rien de Robert Sheckley - YouTube

0
0 75
InterSystems officiel Robert Bira · Nov 24, 2022

Annonce de l'interface utilisateur Web InterSystems Container Registry

InterSystems a le plaisir d'annoncer la sortie de l'interface utilisateur Web InterSystems Container Registry. Cet outil est conçu pour faciliter la découverte, l'accès et l'utilisation des nombreuses images de conteneurs hébergées sur ICR.

L'interface utilisateur d'InterSystems Container Registry est disponible à l'adresse: https://containers.intersystems.com/contents

0
0 45
Annonce Irène Mykhailova · Avr 10, 2022

Docker 20.10.14 (publié le 23 mars 2022) modifie les capacités Linux accordées aux conteneurs d'une manière incompatible avec le vérificateur de capacités Linux dans les conteneurs InterSystems IRIS 2021.1 (et versions ultérieures).

Les utilisateurs exécutant Docker 20.10.14 sous Linux constateront que les conteneurs IRIS 2021.1+ ne démarreront pas et les journaux signaleront à tort que les fonctionnalités Linux requises sont manquantes. Par example :

2
0 128