Introdução
Primeiros passos com o Podman apresenta a você um mecanismo de contêineres moderno e leve, projetado como uma alternativa segura e sem root ao Docker. Ao contrário do Docker, o Podman elimina a necessidade de um daemon central, oferecendo mais segurança e flexibilidade para desenvolvedores e administradores de sistemas que gerenciam contêineres. Sua arquitetura sem root é particularmente atraente para ambientes em que minimizar a escalação de privilégios é uma prioridade.
Neste guia, abordaremos os aspectos essenciais da instalação e do uso do Podman no Ubuntu Server 22.04. Também trataremos de um problema comum relacionado à obtenção de imagens de contêiner usando nomes curtos (por exemplo,nginx) e forneceremos uma solução clara para ajudá-lo a começar a usar o Podman sem problemas.

Artigos anteriores:
01. Introdução ao Ubuntu Server – SysOSX: AI & Cloud
02. Como configurar seu primeiro Ubuntu Server: guia para iniciantes – SysOSX: AI & Cloud
03.Dominando a linha de comando do Linux para Ubuntu Server – SysOSX: AI & Cloud
04. Gerenciamento de usuários e permissões no Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
05. Fundamentos de rede para Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
06. Instalação e gerenciamento de software no Ubuntu Server: guia completo – SysOSX: AI & Cloud
07.Aplicação de patches e atualização do Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
08. Protegendo seu Ubuntu Server: etapas práticas de reforço e proteção – SysOSX: AI & Cloud
09. Auditoria e registro do Ubuntu Server
10. Ferramentas de monitoramento de sistema para Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
11. Registro centralizado para Ubuntu Server: um guia indispensável – SysOSX: AI & Cloud
12. Auditoria e conformidade para Ubuntu Server: práticas recomendadas – SysOSX: AI & Cloud
14. Hospedar vários sites em um único Ubuntu Server: dicas úteis – SysOSX: AI & Cloud
15. Gerenciamento de armazenamento e discos no Ubuntu Server: guia simples – SysOSX: AI & Cloud
18. Como configurar e usar o LVM no Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
19. Introdução à virtualização com KVM: guia para iniciantes de Ubuntu Server – SysOSX: AI & Cloud
Índice
O que é o Podman e por que usá-lo?
O Podman é um mecanismo de contêineres projetado para criar, executar e gerenciar contêineres com foco em segurança e flexibilidade. Veja por que o Podman está ganhando popularidade:
- Arquitetura sem daemon: O Podman não depende de um serviço em segundo plano (ao contrário do modelo baseado em daemon do Docker), reduzindo superfícies de ataque e melhorando a segurança.
- Contêineres sem root: Execute contêineres como usuário sem root para aumentar ainda mais a segurança.
- Comandos compatíveis com o Docker: A CLI do Podman foi projetada para ser compatível com o Docker, permitindo que você use comandos como
podman pulloupodman runsem complicações. - Integração com o systemd: Gerencie contêineres como serviços do sistema com facilidade.
Etapa 1: Instalar o Podman no Ubuntu Server 22.04
1.1 Atualize seu sistema
Antes de instalar o Podman, verifique se seu sistema está atualizado para evitar problemas de compatibilidade:
sudo apt update && sudo apt upgrade -y
1.2 Instalar o Podman
O Podman está incluído nos repositórios padrão do Ubuntu, então você pode instalá-lo diretamente usando o gerenciador de pacotes apt:
sudo apt install podman -y
1.3 Verificar a instalação
Após a instalação, verifique a versão instalada do Podman para garantir que está pronto para uso:
podman --version
Exemplo de saída:
podman version 3.4.4
Etapa 2: Execute seu primeiro contêiner do Podman
2.1 Obter uma imagem de contêiner
O Podman usa imagens de contêiner para executar aplicações. Comece obtendo a imagem leve do Alpine Linux:
podman pull alpine
2.2 Executar um contêiner
Execute um contêiner usando a imagem do Alpine:
podman run --rm -it alpine sh
Este comando inicia um shell interativo dentro do contêiner do Alpine. Você pode testar comandos básicos, como:
echo "Hello from Podman!"
2.3 Sair do contêiner
Para sair do contêiner, digite:
exit
Etapa 3: Entendendo a resolução de nomes curtos do Podman
O problema com nomes curtos
Ao obter imagens de contêiner usando nomes curtos (por exemplo,nginx), o Podman precisa saber em qual registro procurar a imagem. Sem a configuração adequada, você pode encontrar o seguinte erro:
Error: short-name "nginx" did not resolve to an alias and no unqualified-search registries are defined in "/etc/containers/registries.conf"
Por que esse erro acontece?
O Podman requer um arquivo de configuração (registries.conf) para definir os registros de contêineres nos quais deve procurar imagens. Se esse arquivo estiver ausente ou configurado incorretamente, o Podman não consegue resolver nomes curtos como nginx.
Etapa 4: Corrigir o erro de resolução de nomes curtos
4.1 O arquivo registries.conf : localize-o ou crie-o
O arquivo registries.conf geralmente está localizado em /etc/containers/registries.conf. Verifique se o arquivo existe:
ls /etc/containers/registries.conf
Se não existir, crie-o:
sudo nano /etc/containers/registries.conf
4.2 Adicionar a configuração de registro padrão
Adicione a seguinte configuração ao arquivo:
[registries.search]
registries = ['docker.io', 'quay.io']
docker.io: Refere-se ao Docker Hub, o registro de contêineres mais usado.quay.io: Outro registro de contêineres popular.
Salve o arquivo e saia (Ctrl+O e depois Ctrl+X, se estiver usando o nano).
4.3 Tentar novamente o comando de obtenção
Com a configuração de registro pronta, tente obter novamente a imagem de nginx novamente:
podman pull nginx
O Podman agora deve resolver o nome curto nginx para docker.io/library/nginx e baixar a imagem com sucesso.
Etapa 5: Executar contêineres como usuário sem root
Um dos recursos de destaque do Podman é sua capacidade de executar contêineres sem exigir privilégios de root. Veja como configurá-lo:
5.1 Mudar para um usuário sem root
Faça login como usuário comum (por exemplo,uadmin):
su - uadmin
Verifique se o Podman funciona para o usuário sem root:
podman info
5.2 Corrigir problemas de permissão para usuários sem root
Se você encontrar um erro de permission denied ao executar o Podman como usuário sem root, provavelmente se deve à propriedade incorreta do diretório pessoal do usuário.
Verifique a propriedade do diretório pessoal:
ls -ld /home/uadmin
Se o diretório pertencer a root, corrija-o:
sudo chown -R uadmin:uadmin /home/uadmin
Crie manualmente o diretório .local:
mkdir -p /home/uadmin/.local/share/containers
sudo chown -R uadmin:uadmin /home/uadmin/.local
Teste o Podman novamente:
podman info
O Podman agora deve funcionar corretamente como usuário sem root.
Etapa 6: Comandos úteis do Podman para iniciantes
Aqui estão alguns comandos essenciais do Podman para ajudá-lo a começar:
- Listar contêineres em execução:
podman ps
- Listar todos os contêineres (incluindo os parados):
podman ps -a
- Parar um contêiner em execução:
podman stop <container-id>
- Remover um contêiner:
podman rm <container-id>
- Remover uma imagem:
podman rmi <image-name>
Documentação de referência:
Primeiros passos com o Podman | Podman
Conclusão
O Podman é um mecanismo de contêineres seguro, leve e flexível, perfeito para o Ubuntu Server 22.04. Neste guia, abordamos:
- Instalar o Podman.
- Executar seu primeiro contêiner.
- Corrigir o erro de resolução de nomes curtos.
- Executar contêineres como usuário sem root.
Seguindo estas etapas, você agora tem uma base sólida para começar a explorar o Podman e gerenciar contêineres de forma eficaz. Com seus recursos sem root e sua CLI compatível com o Docker, o Podman é uma excelente ferramenta para fluxos de trabalho modernos de conteinerização.
Fique atento:
No próximo artigo, falaremos sobre como implantar o Ubuntu Server em plataformas de nuvem , como GCP, AWS e Azure.