Estou dentro de um worker
nó em um cluster do GKE.
Estou executando em um contêiner root
usando o seguinte comando
runc --root /run/containerd/runc/k8s.io/ exec -cap CAP_SYS_ADMIN -t -u 0 <container-id> bash
root@<pod-name>:/#
whoami
root
No entanto, a tentativa de instalar pacotes falha da seguinte forma
root@<pod-name>:/# apt update
Reading package lists... Done
E: List directory /var/lib/apt/lists/partial is missing. - Acquire (30: Read-only file system)
Existe uma maneira de contornar isso?
O erro
E: List directory /var/lib/apt/lists/partial is missing. - Acquire (30: Read-only file system)
indica que seu contêiner foi inicializado no modo somente leitura e você não pode adicionar ou alterar o conteúdo dentro do contêiner.Pode haver muitos motivos para isso, semelhantes aos mencionados abaixo. Analisá-los o ajudará a resolver o problema:
Verifique se a imagem do contêiner que você está usando é somente leitura executando a imagem localmente. Se a imagem em si for somente leitura, tente baixar uma nova imagem de contêiner com acesso de leitura e gravação.
Se você estiver usando algum contexto de segurança no arquivo de manifesto de implantação do contêiner, verifique se definiu readOnlyRootFilesystem: como verdadeiro. Se isso for definido como verdadeiro, você não poderá adicionar ou remover alterações em seu contêiner. Tente reimplantar seu contêiner removendo este parâmetro ou definindo o parâmetro readOnlyRootFilesystem: como falso.
Se você puder nos fornecer mais detalhes sobre a imagem do contêiner que está usando ou o arquivo de manifesto de implantação que está usando ou quaisquer etapas para reproduzir o problema, será útil para os membros da comunidade fornecerem uma resposta mais precisa.
Além disso, conforme
David maze
sugerido, se você não tiver confirmado as alterações feitas neste contêiner e criado uma nova imagem a partir dele, as alterações feitas serão perdidas. Portanto, sugere-se usar o arquivo docker para instalar os pacotes em vez de usar uma imagem de contêiner para construir uma nova imagem.