Artículo
· 11 mayo, 2022 Lectura de 3 min

Cómo añadir VSCode a tu contenedor IRIS

Una de las formas más sencillas de configurar entornos de desarrollo repetibles es utilizar contenedores para ellos. Descubrí que cuando cambian rápidamente, era muy conveniente alojar una instancia de vscode dentro de mi contenedor de desarrollo. De este modo, he creado un script de contenedor sencillo que permite añadir en un contenedor IRIS un vscode basado en un navegador. Esto debería funcionar para la mayoría de los contenedores 2021.1 y posteriores. El repositorio de mi código se puede encontrar aquí

El contenedor de InterSystems IRIS con vscode y pre-conectado

Cred Value
User _SYSTEM
Password SYS

image

Visión general

Este proyecto crea un contenedor IRIS con una versión servidor (basada en web) de vscode disponible en el mismo contenedor IRIS. Esto ofrece:
* Edición del código en el mismo contenedor
* Pre-conexión a la instancia del contenedor de IRIS
* Enlaces desde el Management Portal
* Arranque automático del IDE con el contenedor

Inicio rápido

  1. Descarga o git clone https://github.com/nickmitchko/Hosting-vscode-in-a-container.git
  2. En la raíz del proyecto, ejecuta docker build . -t vscode-irishealth-ml:latest --no-cache
  3. Ejecuta docker-compose up
    • No usas docker compose? Echa un vistazo aquí
  4. Ve al Management Portal
  5. Inicia sesión con el usuario y contraseña mostrada anteriormente
  6. Haz clic en el enlace a VSCODE en el panel Favoritos
  7. Cuando te pregunte, utiliza la misma contraseña en vscode para conectar con la instancia de IRIS.
# New folder for project
mkdir vscode-iris
cd vscode-iris

# Clone repo here
git clone https://github.com/nickmitchko/Hosting-vscode-in-a-container.git .

# Build image
docker build . -t vscode-irishealth-ml:latest --no-cache

# Only Run (A) or (B)
#
# (A) Run compose file
docker-compose up
# OR (B) if you want a daemon
docker-compose up -d

Añadiendo Persistencia

Si quieres una instancia de IRIS persistente, descomenta las lineas 16 a 20 en el fichero docker-compose.yml. Esto monta un volumen de almacenamiento persistente al contenedor.

    volumes:
    - "./durable/:/durable/"
    environment:
    - ISC_DATA_DIRECTORY=/durable/iconfig

Cambiando la imagen de base

Esta imagen se construye sobre las imágenes zpm de la Comunidad de Desarrolladores de InterSystems (las puedes encontrar aquí). Estas imágenes incluyen el comando zpm que nos permite instalar fácilmente desde el repositorio, pero solo tiene una licencia "community" de 90 días.

La etiqueta de imagen usada para builds es:

FROM intersystemsdc/irishealth-ml-community:latest

Si quieres cambiar la imagen, cambia la primera línea del archivo docker a tu etiqueta de imagen deseada (o una instancia de IRIS modificada o una oficialmente soportada). Por ejemplo:

FROM containers.intersystems.com/intersystems/irishealth-community:2021.2.0.651.0

Sin Docker-Compose

Si no usas docker compose, aún puedes ejecutar el contenedor así:

# After building the container
# --after command is required
docker run --name vscode -d \
    --publish 1972:1972 \
    --publish 52773:52773 \
    --publish 51773:51773 \
    --publish 53773:53773 \
    --publish 8080:8080 \
    --publish 8888:8888 \
    vscode-irishealth-ml:latest \
    --after "/bin/bash /install/boot.sh"
Comentarios (1)2
Inicie sesión o regístrese para continuar