← Docker: executar e diagnosticar contentores
05 / 12 · 40 MIN

Compose e privilégios

Define dependências úteis e concede apenas o acesso operacional necessário.

Conceito e mecanismo

Compose descreve serviços e as relações necessárias para os executar. Ordem de arranque e prontidão são propriedades diferentes. Uma dependência iniciada pode ainda estar a recuperar ficheiros ou preparar ligações. service_healthy permite esperar pelo healthcheck definido para essa dependência. O valor da espera depende do que o check mede: verificar um processo não demonstra uma transação completa. service_completed_successfully serve uma dependência que tem de terminar com sucesso, como uma inicialização aprovada. Mantém tratamento de indisponibilidade na aplicação porque a dependência também pode falhar depois do arranque. A configuração deve ser revista com os valores efetivos do ambiente, as versões suportadas e os acessos concedidos a cada serviço.

Aplicação guiada

Num exemplo fictício, um job de testes pede acesso ao socket do daemon para listar contentores. Num daemon rootful, a pertença ao grupo docker concede privilégios elevados; o nome do grupo não restringe a API a leitura. Avalia uma integração que forneça apenas a informação necessária, ou um executor isolado apropriado ao trabalho. Executar a aplicação com um utilizador não root limita parte do acesso, mas não neutraliza um socket privilegiado concedido ao processo. Rootless altera também os privilégios do daemon e usa namespaces de utilizador; não equivale a declarar USER no Dockerfile. Revê mounts, rede e capacidades em conjunto e evita usar privileged como solução genérica para uma permissão não diagnosticada.

NA PRÁTICA

Base running às 09:00, pronta às 09:01: a dependência iniciada não garante uma ligação às 09:00.

Armadilhas comuns

Ordem como prontidão; USER como rootless; socket como leitura; privileged como diagnóstico.

Tópicos relacionados: Processos e imagens · Build e distribuição · Rede e acesso

Leva esta ideia contigo

Liga cada dependência a uma condição observável e cada acesso a uma necessidade.

Criar conta

Referência: Compose dependency readiness · Docker Engine Linux containers, BuildKit and Compose; official documentation consulted 2026-09-30; version-dependent behavior explicitly scoped

Docker® é uma marca registada de Docker, Inc. A dr.pt é uma plataforma de preparação independente e não está afiliada, associada, patrocinada, autorizada nem aprovada por Docker. Os conteúdos e as perguntas são originais, não são perguntas oficiais de exame, e concluir os nossos testes não atribui nem garante qualquer certificação. Os nomes são usados apenas para identificar o tema. Todas as outras marcas pertencem aos respetivos titulares.