Este IG serve de template para novos IGs no ecossistema Português.
- Docker Desktop — download para Mac / Windows / Linux
- Alternativa sem Docker:
java,ruby,jekylleperlinstalados (ver modos abaixo)
chmod +x _genonce.sh./_genonce.shPara forçar um modo específico:
./_genonce.sh --mode 2 # Docker com jar local
./_genonce.sh --mode 3 # Docker com imagem completaFazer duplo clique em _genonce.bat, ou correr na linha de comandos:
_genonce.batPara forçar um modo específico:
_genonce.bat --mode 2
_genonce.bat --mode 3Nota Windows: o Docker Desktop no Windows usa WSL2 e corre sempre containers
linux/amd64nativamente — não são necessárias configurações adicionais.
Nota: Se não houver ligação à internet, o script deteta isso automaticamente e corre em modo offline (sem validação de terminologias).
Opção simples: abre o ficheiro output/index.html diretamente no browser.
Opção com servidor local (recomendado — alguns recursos podem não carregar sem servidor HTTP):
# macOS / Linux
python3 -m http.server 8080 -d ./outputREM Windows
python -m http.server 8080 -d outputAbre http://localhost:8080 no browser.
Alternativas:
# Node.js (todas as plataformas)
npx serve ./output
# Ruby (macOS / Linux)
ruby -run -e httpd ./output -p 8080Os scripts _genonce.sh / _genonce.bat detetam automaticamente o melhor modo disponível, por esta ordem:
Condições: publisher.jar encontrado + java, ruby, jekyll e perl instalados.
./input-cache/publisher.jar ou ../publisher.jar
Corre diretamente com java -jar, sem Docker.
Condições: publisher.jar encontrado, mas alguma dependência nativa em falta.
Usa a imagem ghcr.io/trifork/ig-publisher:latest como ambiente (Sushi, Node, etc.) mas executa o jar local em vez do bundled. Útil quando o jar local é mais recente do que o incluído na imagem.
Para obter o publisher.jar:
# macOS / Linux
./_updatePublisher.shREM Windows
_updatePublisher.batCondições: nenhum publisher.jar encontrado.
Usa a imagem ghcr.io/trifork/ig-publisher:latest, que já inclui Java e o IG Publisher. Não é necessário instalar nada além do Docker.
Na primeira execução, o Docker faz download da imagem (~500 MB). As seguintes são muito mais rápidas.
Nos modos Docker, a pasta de cache FHIR do host é montada no container, evitando downloads repetidos a cada execução.
| Plataforma | Pasta |
|---|---|
| macOS / Linux | ~/.fhir |
| Windows | %USERPROFILE%\.fhir |
Modo 3 (Docker): para usar a versão mais recente basta fazer pull da imagem:
docker pull ghcr.io/trifork/ig-publisher:latestModos 1 e 2 (jar local): corre o script de atualização, que descarrega a versão mais recente do IG Publisher:
# macOS / Linux
./_updatePublisher.shREM Windows
_updatePublisher.bat| Pasta / Ficheiro | Conteúdo |
|---|---|
input/fsh/ |
Recursos em FHIR ShortHand (FSH) |
input/pagecontent/ |
Páginas narrativas em Markdown |
input/images/ |
Imagens |
input/images-source/ |
Diagramas PlantUML |
input/examples/ |
Exemplos em JSON |
input-cache/publisher.jar |
Publisher local (opcional, para modos 1 e 2) |
sushi-config.yaml |
Configuração do IG (páginas, menu, metadados) |
ig.ini |
Configuração do publisher |
output/ |
Site gerado (criado ao correr o publisher) |
"docker: command not found" / "docker não é reconhecido" → Instala o Docker Desktop e certifica-te que está em execução.
"permission denied" ao correr o script (macOS/Linux)
→ Corre chmod +x _genonce.sh primeiro.
Erro de terminologia / validação
→ Se estiveres offline, o script deteta isso e usa -tx n/a automaticamente. Se estiveres online e o erro persistir, podes forçar o modo offline:
# macOS / Linux
./_genonce.sh -tx n/aREM Windows
_genonce.bat -tx n/aConflito de versão do publisher (modo 3)
→ Para fixar uma versão específica, substitui latest pela tag desejada nos scripts, por exemplo ghcr.io/trifork/ig-publisher:v1.6.x.
O modo nativo falha mas Java está instalado
→ Verifica se ruby, jekyll e perl também estão instalados. Se algum faltar, o script usa Docker automaticamente.