Artigo
· Set. 5 4min de leitura

IRIS no Docker para iniciantes

O artigo foi motivado pelo 2025 September Article Bounty
********************************************************


O princípio do Docker é simplesmente convincente para mim.

  • Obtenha uma área restrita onde você pode brincar e tentar o que quiser/precisar fazer.
  • Depois de terminar, você pode descartá-la sem deixar rastros em seu ambiente de trabalho.

Essa foi a base técnica que me permitiu executar cerca de 700 revisões no OEX 
quase sem efeitos colaterais  (exceto aqueles causados por mim mesmo).

Para iniciantes, vou começar com o IRIS puro, sem *health, *ML, *whatever.

Primeiro, você precisa instalar o Docker. Ele está disponível em quase todas as plataformas.
Minha preferência pessoal é o Windows Docker Desktop por seu console de
administração confortável. Não me aprofundo na gestão detalhada do Docker.
Há material de leitura suficiente para pesquisar no Docker Docs

Segundo, você decide sobre uma encarnação do IRIS de sua escolha
a mais simples: intersystemsdc/iris-community  pronta para usar

  • roda no Ubuntu
  • tem uma licença comunitária válida
  • tem o Apache httpd instalado
  • tem o cliente IPM/ZPM instalado

Aviso nº 1:  Como iniciante, não estude os pacotes oferecidos no OEX
Eles são ótimos (na maioria), mas sempre direcionados a alguma funcionalidade
para alguma aplicação especial que requer configurações especiais e uma instalação complicada.

Aviso nº 2:  O Docker tem um rico conjunto de comandos com tudo o que você precisa
E esses comandos oferecem uma enxurrada de parâmetros (às vezes confusos).
Portanto, sugiro torná-los reproduzíveis usando scripts dedicados.
Dockerfile  é a maneira de lidar com construções complexas com muitos extras a serem
carregados antecipadamente. Normalmente, eu os via relacionados ao Python e a vários casos de demonstração de IA.
Não há necessidade desse exemplo.
docker-compose.yml é o verdadeiro responsável por ativar seu contêiner.
Ele precisa de:

  • uma definição do que deseja “compor”  >> service: 
    • um nome para elet  >>  iris:
    • qual imagem executar  >> image: intersystemsdc/iris-community
  • Em seguida, você precisa definir como a porta 1972 do SuperServer e a   porta padrão 52773 do WebServer ficarão visíveis fora do contêine
    •     ports:      - 41773:1972   - 42773:52773
  • Por fim,  não é um requisito urgente, mas muitas vezes é muito útil mapear seu diretório local para algum diretório interno no contêiner. Eu usei /external Especialmente no início, esse caminho bidirecional facilita muito a vida
    • volumes:  - ./:/external

Agora, este é o texto final do docker-compose.yml

services:
  iris:
    image: intersystemsdc/iris-community
    ports: 
      - 41773:1972
      - 42773:52773
    volumes:
      - ./:/external

Agora você está pronto para executar sua primeira instância do IRIS no Docker

  • docker-compose up  permite que você assista à inicialização completa
  • docker-compose up -d  inicia uma  inicialização em segundo plano e mantém
  • docker ps -a    mostra as portas e as imagens em execução do seu contêiner

OK, seu novo IRIS está no Docker agora.
Mas como você pode usá-lo?

  • Você tem o WebServer e, portanto, o Portal de Gerenciament
  • Você tem o SuperServerPort para acesso ODBC, IRIS NATIVE, ... (e até mesmo Studio).
  • E você também pode acessar o IRIS a partir da linha de comando dentro do contêiner.er​​​​​​
    • docker-compose exec iris iris session iris
  • Dividindo essa única linha, você acessa primeiro o contêiner e depois o IRIS
    • docker-compose exec iris bash
    • Then iris view
      • Instance 'IRIS'   (default)
                directory:    /usr/irissys
                versionid:    2025.1.0.223.0com
                datadir:      /usr/irissys
                conf file:    iris.cpf  (WebServer port = 52773)
                status:       running, since Thu Sep  4 14:35:19 2025
                SuperServers: 1972
                state:        ok
                product:      InterSystems IRIS
      • E iris session iris
      • Node: 3266c5c8b21f, Instance: IRIS 
        USER>
    • Aqui, no nível do bash, você tem todas as opções para operar o IRIS em suas mãos Seu usuário Ubuntu é   irisowner
    • para os raros casos em que você pode precisar de acesso root  docker-compose exec -u root iris bash
    • Pare seu contêiner com   docker-compose down

Algumas considerações sobre alterações durante a sessão do contêiner.

  • Tudo o que você criar, alterar ou modificar existirá enquanto o contêiner existir.
    • Depois que o contêiner for excluído, todas as alterações, etc., desaparecerão. 
  • Isso pode ser incômodo em configurações grandes.
  • O Dockerfile cuida de uma configuração que é feita uma vez em um ciclo de compilação, em vez de executar a configuração a cada inicialização do contêiner.
  • Essa é uma boa prática em pacotes OEX, embora eu
Discussão (0)1
Entre ou crie uma conta para continuar