AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1148898
Accepted
2rs2ts
2rs2ts
Asked: 2023-12-01 03:37:11 +0800 CST2023-12-01 03:37:11 +0800 CST 2023-12-01 03:37:11 +0800 CST

Como faço para que o `ctr image pull` sempre use um `--hosts-dir` personalizado sem especificá-lo na linha de comando?

  • 772

Eu tenho um arquivo personalizado com /etc/containerd/certs.d/registry.at.my.company/hosts.tomlalgumas configurações definidas para um contêiner de registro local em execução em meus servidores. Isso está funcionando bem quando eu o configuro para um CRI para Kubernetes, mas eu e meus colegas achamos frustrante termos que adicionar --hosts-dir /etc/containerd/certs.dtodos os nossos ctr image pullcomandos ao executar ctrmanualmente (fora das coisas do K8). foi muito fácil: apenas definimos a opção correta no arquivo de configuração JSON do daemon do docker ( "insecure-registry": "127.0.0.1") e funcionou bem. Mas estou tendo problemas para encontrar uma configuração equivalente para ctrse comportar de maneira semelhante. Claro, o plugin CRI está usando ohosts.tomlarquivo que configurei perfeitamente, mas gostaria de poder extrair imagens manualmente sem precisar adicionar um sinalizador extra ao comando. Existe uma maneira de configurar o containerd para que ctr image pullnão precise --hosts-dirser passado todas as vezes?

Esta é a hosts.tomlaparência desse arquivo:

server = "http://registry.at.my.company"

[host."http://registry.at.my.company"]
  skip_verify = true
  plain-http = true

E no /etc/containerd/config.tomlarquivo, tenho o CRI apontando para ele assim:

[plugins."io.containerd.grpc.v1.cri".registry]
config_path = "/etc/containerd/certs.d"

Mas, como supus e disse acima, isso parece afetar apenas a forma como o kubelet interage com o containerd, e não como ctro faz.


Algum contexto de fundo:

Temos esse registro local em execução com uma /etc/hostsentrada como esta: 127.0.1.1 registry.at.my.company. Junto com algumas regras de firewall, isso faz com que todos que usam nossos clusters Kubernetes tenham que enviar suas imagens registry.at.my.companye configurar seus pods para usar imagens de lá, porque nossos kubelets não serão capazes de extrair de qualquer lugar além desse domínio; e para fazer com que nosso registro não seja um SPoF, executamos esses contêineres de registro locais como espelhos somente leitura (e o próprio servidor do contêiner de registro aceita apenas conexões locais, evitando que a falta de certificados SSL seja um problema). não tenho certeza se isso é relevante para o meu problema, mas deve ajudar a explicar por que eu estava falando sobre a insecure-registryopção antiga no docker e por que eu hosts.tomluso httpem vez dehttps, para que não preocupe ninguém.

Além disso, esta é a versão 1.6.19 do containerd com a qual estou trabalhando.

configuration
  • 1 1 respostas
  • 48 Views

1 respostas

  • Voted
  1. Best Answer
    2rs2ts
    2023-12-07T08:59:32+08:002023-12-07T08:59:32+08:00

    Aparentemente, ctrnão pode ser configurado para se comportar da maneira que desejo. De acordo com esta discussão no containerdrepo , espera-se que você crie um script wrapper personalizado ou um alias de shell que injetará automaticamente --hosts-dirou use um containerdcliente alternativo que suporte a configuração da mesma maneira que a dockerCLI se comportou: um exemplo é nerdctl.

    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve