Find

Article
· Dec 18, 2025 5m read

Reducir la huella de la imagen Docker de IRIS Community Edition

La idea más votada en el InterSystems Ideas Portal —con 74 votos— pide una versión ligera de IRIS. Aunque la plataforma ha crecido hasta convertirse en un potente motor de datos, muchos proyectos solo necesitan sus capacidades de base de datos SQL. Este artículo muestra cómo crear una imagen no oficial y compacta de IRIS Community Edition centrada únicamente en la funcionalidad básica de base de datos, reduciendo el tamaño de la imagen en más de un 80%.

⚠️ Aviso

Este proyecto genera una imagen no oficial y experimental de InterSystems IRIS Community Edition.

  • No está soportada ni avalada por InterSystems.
  • Usadla bajo vuestra propia responsabilidad. Las modificaciones eliminan funciones esenciales de la plataforma y pueden romper la compatibilidad con herramientas, APIs y comportamientos esperados.
  • No se aplican garantías de ningún tipo, incluida su idoneidad para uso en producción.
  • Está pensada solo para fines educativos y experimentales por parte de usuarios avanzados.

¿Por qué un IRIS ligero?

Aunque IRIS incluye hoy funciones muy completas —interoperabilidad, analítica, machine learning, gestión del sistema, etc.— muchos proyectos solo requieren sus capacidades SQL básicas. La imagen oficial Docker de Community Edition ocupa aproximadamente:

  • Uso en disco: 3,5–3,8 GB
  • Tamaño comprimido: ~1,1 GB

IRIS Light reduce eso a:

  • Uso en disco: ~575–583 MB
  • Tamaño comprimido: ~144–148 MB

Esto lo hace adecuado para:

  • Uso SQL en microservicios o contenedores
  • Pipelines de CI con arranque y descarga más rápidos
  • Escalado horizontal donde no se necesitan todas las funcionalidades

Comparación de huella de imagen

Las imágenes oficiales de IRIS Community Edition suelen ocupar entre 3.5 y 3.8 GB en disco, con tamaños comprimidos de alrededor de 1.1 GB

$ docker images containers.intersystems.com/intersystems/iris-community
IMAGE                                                                    ID             DISK USAGE   CONTENT SIZE
containers.intersystems.com/intersystems/iris-community:latest-cd        14c6314edcc5        3.8GB         1.17GB
containers.intersystems.com/intersystems/iris-community:latest-em        4c25627895eb       3.52GB         1.01GB
containers.intersystems.com/intersystems/iris-community:latest-preview   424e87dbb7d8       3.81GB         1.17GB

Por el contrario, la imagen simplificada “IRIS Light” creada mediante este enfoque es aproximadamente 8 veces más pequeña en tamaño comprimido

$ docker images caretdev/iris-community-light
IMAGE                                                                    ID             DISK USAGE   CONTENT SIZE
caretdev/iris-community-light:latest-cd                                  ce5c2d7fa173        583MB          148MB
caretdev/iris-community-light:latest-em                                  fd33a51a0e81        575MB          144MB
caretdev/iris-community-light:latest-preview                             f10c714117da        583MB          148MB

Analizando las capas de la imagen con Dive

Para comprender y optimizar la imagen de IRIS Community Edition, usamos dive, una herramienta para inspeccionar capas de imágenes Docker e identificar ineficiencias.

Antes de la optimización: imagen estándar de IRIS Community

La captura de pantalla de abajo muestra el análisis de la imagen oficial iris-community:latest-em. Una de las capas más grandes pesa 882 MB e incluye Java, bibliotecas del sistema y otros componentes de ejecución que no son estrictamente necesarios para cargas de trabajo solo de SQL

Y la más grande, de 1.5 GB, que contiene principalmente IRIS itself

Después de la optimización: imagen IRIS Light

Al eliminar paquetes innecesarios y compactar el almacenamiento interno de IRIS, la imagen final cabe en una sola capa de 320 MB, logrando una reducción de tamaño drástica

Cómo se construye la imagen IRIS Light

El proceso sigue un Dockerfile de múltiples etapas, comenzando desde la base estándar iris-community:latest-em. Los pasos clave incluyen:

1. Desactivar componentes en la configuración

  • Desactivar WebServer, System Management Portal y Ensemble en iris.cpf.

2. Eliminar paquetes no usados dentro de IRIS

Usando ObjectScript dentro de una sesión IRIS:

  • Borrar paquetes: %SYS.ML, DeepSee, Interop, OAuth2, Net, Report, y más.
  • Conservar solo las bibliotecas esenciales del sistema (por ejemplo, %Library, %SQL, %SYSTEM).

3. Sustituir clases

Algunas clases necesarias (por ejemplo, para el arranque) se sustituyen por implementaciones mínimas sin funcionalidad cuando es necesario.

4. Limpiar bases de datos

Compactar y desfragmentar las bases de datos clave para reducir el tamaño.

5. Limpieza del sistema de archivos

Eliminar:

  • Herramientas de desarrollo
  • Pila web y CSP
  • Bibliotecas de interoperabilidad
  • Soporte de Python/Java
  • Datos de localización, registros, archivos temporales, controladores ODBC/JDBC

6. Copiar el contenido limpiado a una base Ubuntu nueva

La imagen final se construye sobre ubuntu:24.04, incluye solo los archivos y herramientas necesarios y usa tini como PID 1.

Resultado

La imagen resultante tiene aproximadamente:

  • Tamaño comprimido: ~144–148 MB
  • Uso de disco sin comprimir: ~570–580 MB
  • Funcionalidad SQL: verificada usando la suite de pruebas sqlalchemy-iris (619 aprobadas, 912 omitidas, 0 fallos)

Esto la hace muy adecuada para:

  • Servicios SQL mínimos
  • Contenedores ligeros de desarrollo/pruebas
  • Escenarios de despliegue embebidos o en el edge
  • Arquitecturas sin estado y escaladas horizontalmente

Limitaciones importantes

  • Sin Management Portal ni servicios web
    Toda la pila CSP/web está eliminada.
  • Sin Interoperabilidad, DeepSee, iKnow o Machine Learning
    Estos subsistemas se eliminan explícitamente
  • Sin soporte interno ni externo
    InterSystems no ofrece garantías para esta imagen. La compatibilidad y el comportamiento de actualización son indefinidos.
  • Las futuras versiones de IRIS pueden cambiar los requisitos de arranque
    Dependencias internas en paquetes o archivos eliminados pueden impedir que futuras versiones funcionen con este enfoque

Conclusión

IRIS Light es una imagen Docker simplificada y creada por la comunidad para InterSystems IRIS, que ofrece reducciones significativas en tamaño y complejidad para casos de uso centrados en bases de datos. Aunque no está oficialmente soportada, proporciona una base para experimentación, creación rápida de prototipos y situaciones donde no se necesitan todas las capacidades de IRIS.

Se anima a los usuarios a revisar el Dockerfile, adaptarlo a sus propias necesidades y comprender las implicaciones de eliminar funciones clave de la plataforma.

Se anima a los usuarios a personalizar aún más el Dockerfile para ajustarlo a sus propias necesidades operativas y de seguridad. Todo el proceso de construcción es transparente y reproducible usando únicamente imágenes base públicas de Docker.


Este proyecto está disponible aquí 

Imágenes Docker de IRIS Community Light disponibles en Docker Hub

Discussion (0)1
Log in or sign up to continue
Article
· Dec 18, 2025 2m read

[Quick tip] Cómo crear un agente IA con la documentación de Intersystems en Teams

Hola a todos.

Os voy a dar un consejo rápido de como implementar un agente IA para realizar búsquedas en la documentación de Intersystems integrado en Teams.

Si, ya se que la página de la documentación tiene su propio buscador IA y es bastante eficaz, pero de esta forma tendríamos un acceso más rápido, sobre todo si Teams es la herramienta corporativa de tu empresa.

También se puede crear otro agente IA para realizar búsquedas en los artículos publicados en la comunidad de desarrolladores (que también tiene su buscador IA integrado).

Paso 1

Seleccionamos la opción "Copilot"

Paso 2

Seleccionamos la opción "Create agent".

Si no veis inicialmente esta opción, pulsar el botón que aparece arriba a la izquierda

Paso 3

Seleccionar la opción Configure, para no utilizar plantillas ya existentes

Le damos un nombre a nuestro agente IA, por ejemplo "Intersystems Docs" y una descripción. Podemos modificar el icono de nuestro agente para que sea más personalizado.

En el apartado "Instructions" añadimos las siguientes entradas

- El agente debe buscar información en la web de Intersystems.
- Proporcionar respuestas precisas y relevantes basadas en la información encontrada.
- Mantener un tono profesional y claro en todas las interacciones.
- No proporcionar información que no esté verificada o que no se encuentre en la web de Intersystems.
- Guiar al usuario a recursos adicionales si es necesario.

Añadimos la URL de la documentación de Intersystems

https://docs.intersystems.com

Nota: Si quereis hacer un agente que consulte la comunidad de desarrolladores, utilizar el siguiente enlace:

https://community.intersystems.com

O añadir ambos para que la búsqueda sea mas completa.

Paso 4

Podemos añadir sugerencias de prompts.

Title Message
Buscar información ¿Puedes buscar información sobre [tema] en la web de Intersystems?
Guía de recursos ¿Puedes guiarme a los recursos disponibles sobre [tema] en la web de Intersystems?
Detalles específicos Necesito detalles específicos sobre [tema] de la web de Intersystems.
Últimas actualizaciones ¿Cuáles son las últimas actualizaciones sobre [tema] en la web de Intersystems?

Pulsamos el botón "Create" y listo... ya podemos utilizar nuestro agente IA

Vamos a consultar cualquier cosa usando nuestro nuevo agente, lo podemos hacer en cualquier idioma, porque ya tiene su traducción incluida.

Espero que os sea de gran utilidad como ha sido para mi.

Discussion (0)1
Log in or sign up to continue
Article
· Dec 17, 2025 5m read

Ollamaを使用して、InterSystems IRISとローカルモデルでAIエージェントを実行する

前の記事では、smolagentsとInterSystems IRISを使用して、SQL、ベクトル検索を使用したRAGinteroperabilityを組み合わせたカスタマーサービスAIエージェントをビルドしました。

その際、LLMと埋め込み表現のためにクラウドモデル(OpenAI)を使用しました。

今回はさらに一歩進めます。Ollamaを利用して、同じエージェントをローカルモデルで実行します

Discussion (0)0
Log in or sign up to continue
Announcement
· Dec 17, 2025

官宣来啦:开发者社区十周年庆典奖

作为十年庆典的一部分,我们很高兴表彰一些长期以来为 InterSystems 开发人员社区做出重大贡献的成员

在过去的十年中,这些人分享知识、支持同行,并帮助加强了我们社区的协作精神。

为了表彰他们的贡献,我们特别推出了一套10 周年纪念版奖项Global Master徽章:

徽章 接收者
 
提名:知识大师(Knowledge Master)—— 十周年纪念版

@Robert Cemper
@Eduard. Lebedyuk
@Muhammad Waseem
@LuisAngel. PérezRamos
@姚 鑫

@Scott. Roth
@Yuri. Gomes
@Yone Moreno
@Mihoko. Iijima
@Rochdi. Badis4742

@Megumi. Kakechi
@John Murray
@Dmitry Maslennikov
@Hiroshi Sato
@Evgeny. Shvarov

 
提名:最佳导师(Best Mentor) —— 十周年纪念版

@Robert Cemper
@Vitaliy. Serdtsev2149
@Eduard. Lebedyuk
@Jeffrey Drumm
@Julius. Kavay
@Dmitry. Maslennikov

@Timothy. Leavitt
@John Murray
@Luis Angel Pérez Ramos
@Alexander Koblov
@Enrico. Parisi
@Vic. Sun

@Evgeny. Shvarov
@Julian. Matthews7786
@Guillaume. Rongier7183
@Marc. Mundt
@Benjamin. Spead
@Alexey. Maslov

 
提名:全球之声(Global Voice)—— 十周年纪念版

西班牙语开发者社区:

@LuisAngel. PérezRamos
@Ricardo. Paiva
@Jose-Tomas. Salvador
@Alberto. Fuentes
@Francisco. López1549

法语开发者社区:

@Pierre. LaFay2520
@Guillaume. Rongier7183
@Sylvain. Guilbaud
@Iryna. Mykhailova
@Lorenzo. Scalese

中文开发者社区:

@姚鑫
@ 刘杰良
@ 王景伟
@Lilian. Huang

日语开发者社区:

@Toshihiko Minamoto
@Mihoko. Iijima
@Megumi. Kakechi
@Hiroshi Sato
@Seisuke. Nakahashi
@Tomoko. Furuzono

葡萄牙语开发者社区:

@Danusa. Ferreira
@Heloisa. Paiva
@Larissa. Prussak
@EikeScudellari. Franco
@Rochael. Ribeiro
@Julio. Esquerdo
@Andre Ribera. LarsenBarbosa

 
 
提名:新星(Raising Star) - 10 周年纪念版

@姚 鑫
@Muhammad. Waseem

我们衷心感谢这些奖项的获得者,以及在过去十年中为开发者社区贡献时间、专业知识和热情的每一位成员。你们的努力为未来的岁月奠定了坚实的基础!

祝贺所有获奖者,并感谢您参与这一里程碑事件。

Discussion (0)1
Log in or sign up to continue
Announcement
· Dec 17, 2025

Rétrospective 2025 - Célébrez votre année avec la communauté des développeurs !

Bonjour à tous,

✨ Alors que nous clôturons une année incroyable au sein de la Communauté des développeurs, il est temps de revenir sur tout ce que vous avez accompli en 2025 ! Votre récapitulatif 2025 personnalisé est maintenant disponible : un aperçu unique de votre activité, de vos réalisations et de la valeur ajoutée que vous avez apportée à la communauté cette année.

Des articles que vous avez partagés aux discussions que vous avez lancées, vos contributions ont permis de façonner les connaissances et la collaboration sur notre plateforme. Vous pouvez désormais tout retrouver au même endroit !

Que contient votre récapitulatif 2025 ? Un aperçu personnalisé de votre année, incluant :

  • Vos publications, commentaires et vues
  • Votre tag préféré
  • Votre contribution la plus marquante
  • Et quelques moments forts que nous avons préparés spécialement pour vous !

Pour consulter votre récapitulatif, rendez-vous sur la page principale et cliquez sur « Voir mon récapitulatif ». Vous pouvez aussi ouvrir votre profil.

Vous y trouverez un résumé mis en page avec soin, facile à partager avec vos collègues, vos amis ou sur vos réseaux sociaux préférés, pour mettre en valeur votre impact tout au long de l’année. Pour partager votre récapitulatif, cliquez simplement sur « Partager » en bas à droite.

Nous serions ravis de savoir à quel club vous appartenez ! N'hésitez pas à partager en commentaires les moments forts qui vous ont le plus surpris.

Célébrons ensemble les connaissances, l'innovation et la collaboration que vous avez apportées à la communauté en 2025. Que cette nouvelle année soit tout aussi exceptionnelle !

Discussion (0)1
Log in or sign up to continue