NotariumDocumentação
Versão da documentação: latest
PT

CLI da imagem

A imagem já sabe como se iniciar: não é preciso acrescentar comando nenhum ao docker run — por padrão ela sobe o servidor. Um argumento substitui apenas o comando, e por isso uma operação pontual se lê com naturalidade — docker run … IMAGE restore.

Num contêiner em execução, os comandos de operador são chamados via docker exec, com nomes curtos:

docker exec notarium backup
docker exec -it notarium admin list

Comandos

ComandoO que fazComo costuma ser chamado
startSobe o servidor HTTP/MCP como PID 1O comando padrão da imagem
backupEntrega em stream um ZIP online já verificadodocker exec notarium backup mais a sequência de publicação segura do runbook
backup verifyVerifica um arquivo de backup sem alterar nadadocker exec -i notarium backup verify < arquivo
restoreInstala um arquivo de backup numa raiz de dados vaziaUm contêiner pontual sobre um volume novo
adminRecupera o acesso por fora da interfacedocker exec -it notarium admin …
healthcheckConsulta o /api/health localO HEALTHCHECK do Docker
versionVersão, commit, hora do build e link para o código-fonte (--json para scripts)Suporte e checagem de compatibilidade
help / --helpDescreve a CLI ou um comando específicoQualquer contêiner

O start fica em primeiro plano, então os sinais do contêiner chegam direto ao servidor — o docker stop o encerra de forma limpa. Não há comando de parada nem de reinício, e isso é deliberado: essa é tarefa do orquestrador. As migrações de esquema são aplicadas na inicialização; você nunca precisa rodá-las como um comando à parte.

Streams e códigos de saída

  • No modo de stream (sem --output), o backup coloca no stdout apenas os bytes do ZIP; diagnósticos e o resumo final vão para o stderr. Com --output FILE, o arquivo de backup é gravado nesse caminho e o stdout recebe um único resumo em JSON — não redirecione esse stdout para um .zip, o que cair lá não é um arquivo de backup.
  • backup verify, restore e os comandos admin não interativos imprimem o resultado no stdout.
  • Erros vão para o stderr e devolvem código diferente de zero. Comandos desconhecidos, opções desconhecidas, opções repetidas e opções sem valor falham, em vez de serem ignorados em silêncio.
  • O transporte canônico no Docker é stdin e stdout. O par --output FILE no backup e --input FILE no verify/restore existe para cenários em que o contêiner já enxerga o diretório. O --output traz um efeito colateral bem-vindo: o próprio comando grava num arquivo temporário, verifica o backup e o publica de forma atômica, sem sobrescrever nada — assim você não precisa escrever nenhum wrapper de shell.
  • Todo comando tem --help; notarium --version equivale a notarium version.

Identidade do build

O version imprime exatamente o que você está rodando — é daí que parte qualquer conversa sobre compatibilidade e qualquer atualização:

docker run --rm docouno/notarium:latest version
docker compose exec notarium version --json

O version --json devolve a mesma coisa num único objeto — version, commit, builtAt e source (o link para a revisão exata do código-fonte) —, então a checagem de "o que está implantado" pode entrar direto no seu pipeline de deploy. O que o build honestamente não tem volta como null: valores nunca são inventados, e por isso dá para confiar neles. A mesma informação aparece na interface — Settings → About.

As tags de versão são imutáveis

Uma tag de versão publicada sempre significa uma imagem específica: a :0.1.0 nunca vai migrar para outro build. Em produção, fixe uma versão específica em vez de :latest. A imagem publicada é construída para linux/amd64; em outras arquiteturas, construa a partir do código-fonte.

Health checks (verificação de integridade)

O healthcheck só devolve código de saída zero quando o endpoint local /api/health responde que está saudável. Ele foi feito para a diretiva HEALTHCHECK do Docker e para as sondas do orquestrador — sem dependências externas e sem precisar de curl no host.

Recuperando o acesso

O admin é o limite de operador do host. Os caminhos comuns para trocar uma senha estão todos no aplicativo (a sua própria senha, pela interface; a de outra pessoa, por um link de uso único emitido por um administrador). A CLI serve para outra coisa: forçar uma senha sem apresentar a atual e emitir um administrador fora de banda. Para essas duas operações não existe caminho HTTP, e isso é deliberado — não há o que apresentar —, então elas ficam com quem tem acesso ao host.

docker compose exec notarium admin list
docker compose exec notarium admin create-admin <user> --random

A lista completa dos comandos e o significado de cada um estão em Autenticação.

A seguir