Podman AlmaLinux · 10 min read · Oct 05, 2025
Guia para Iniciantes para Instalar e Usar Podman no AlmaLinux 9

Podman é uma ferramenta nativa do Linux para implantar aplicações usando contêineres e imagens de contêineres da Open Container Initiative (OCI). Ele suporta múltiplos formatos de imagem de contêiner, incluindo imagens Docker e imagens de contêiner OCI. Além disso, o Podman suporta o gerenciamento de pods e grupos de contêineres.
Podman é uma ferramenta sem daemon, funcionando como um único comando binário na linha de comando sem um serviço. Ele fornece uma linha de comando semelhante ao Docker, você pode usar um alias como ‘alias docker=podman’.
Neste guia, mostraremos como instalar e usar o Podman como um substituto para o Docker Engine em um servidor AlmaLinux 9. Você aprenderá algumas noções básicas de uso do Podman para gerenciar aplicações em contêineres. Ao completar este guia, você terá uma melhor compreensão de como usar o Podman como orquestração de contêineres para seu desenvolvimento local.
Pré-requisitos
Para começar com este guia, você deve ter o seguinte:
- Um servidor AlmaLinux 9 - Este exemplo usa um servidor com o nome do host ‘ AlmaLinux9 ‘.
- Um usuário não-root com privilégios de administrador sudo/root.
Instalando o Podman
Podman é uma orquestração de contêineres sem daemon e de código aberto para desenvolvimento rápido. Podman é uma aplicação nativa do Linux e fornece uma interface de linha de comando semelhante ao Docker.
Com o Podman, você pode encontrar, executar, compartilhar e implantar aplicações usando contêineres e imagens de contêiner da OCI (Open Containers Initiative).
No AlmaLinux, o Podman está disponível por padrão no repositório AppStream, você pode instalá-lo usando o gerenciador de pacotes DNF.
Execute o seguinte comando dnf para instalar o Podman em seu servidor AlmaLinux.
sudo dnf install podmanDigite y quando solicitado, em seguida, pressione ENTER.

Como o Podman é sem daemon, você pode simplesmente executá-lo sem iniciar nenhum daemon.
Execute o seguinte comando para verificar a versão do Podman e informações detalhadas sobre sua instalação.
podman versionAbaixo está uma saída da versão atual do Podman durante esta escrita:

Além disso, você também pode verificar os detalhes da instalação do Podman usando o seguinte comando.
podman infoExecutando o Podman como um Usuário Não-root
Nesta seção, você configurará o Podman para um usuário não-root. Você criará um novo usuário e garantirá que o novo usuário não-root possa executar e rodar contêineres com o Podman.
Execute o seguinte comando para criar um novo usuário chamado ‘ alice ‘ e configurar a senha para ele. Digite uma nova senha quando solicitado, em seguida, repita.
sudo useradd -m -s /bin/bash alice
sudo passwd aliceAgora, adicione o novo usuário ‘ alice ‘ ao grupo ‘ wheel ‘. Isso permite que o novo usuário execute ‘ sudo ‘ e se torne root.
sudo usermod -aG wheel aliceDepois disso, execute o seguinte comando para habilitar o lingering para o usuário ‘alice’. Isso permite que o usuário ‘alice’ execute o processo do contêiner por um longo período, mesmo quando o usuário estiver desconectado, o processo ainda estará em execução.
sudo loginctl enable-linger aliceEm seguida, faça login como o novo usuário ‘ alice ‘ usando o comando abaixo.
su - alice
Execute o comando ‘ podman ‘ abaixo para rodar um novo contêiner com a imagem ‘ hello-world ‘.
podman run hello-worldSe bem-sucedido, você deve obter uma saída como esta:

Por fim, execute o seguinte comando ‘podman’ para verificar a lista de contêineres em execução e encerrados.
podman ps -aSe a configuração for bem-sucedida, você deve ver o contêiner com a imagem base ‘ hello-world ‘ com o status ‘ Exited ‘.
Encontrando Imagens de Contêiner
Por padrão, o Podman irá recuperar imagens de contêiner de múltiplos registros de imagem, como o registro de imagens Redhat, quay.io e também DockerHub. Você pode adicionar mais registros de imagem de contêiner à configuração ‘/etc/containers/registries.conf’.
Este exemplo usará o DockerHub como um registro de contêiner, então vamos começar.
Execute o seguinte comando para encontrar novas imagens de contêiner que contenham ‘ httpd ‘.
podman search httpdAbaixo está uma saída que você deve receber em seu terminal:

Você também pode limitar a saída usando a opção ‘ –limit ‘ assim:
podman search httpd --limit 3Isso mostrará apenas as três principais imagens de contêiner de cada registro de imagem de contêiner.

Por fim, você também pode usar a opção ‘ –filter ‘ assim:
podman search httpd --filter=is-officialIsso mostrará apenas imagens de contêiner oficiais.
Baixando Imagens
Depois de encontrar as imagens de contêiner, o próximo passo é baixar as imagens de contêiner dos registros.
Execute o seguinte comando para baixar a imagem ‘ httpd ‘ com a tag ‘ alpine ‘.
podman pull httpd:alpineSelecione o registro de imagem que você deseja usar. Este exemplo usará o DockerHub.
Após a fonte ser selecionada, o processo de download começará.

Uma vez terminado, execute o seguinte comando para verificar as imagens disponíveis em seu servidor AlmaLinux.
podman imagesNeste ponto, se bem-sucedido, você deve obter duas imagens de contêiner, a imagem ‘ hello-world ‘ do quay.io e ‘ httpd ‘ do DockerHub.
Inspecionando Imagens
Inspecionar imagens é uma maneira poderosa de obter informações detalhadas sobre como o contêiner será iniciado. No Podman e no Docker, você pode inspecionar imagens com a opção ‘inspect’.
Execute o seguinte comando para obter informações detalhadas sobre a imagem ‘ httpd:alpine ‘.
podman inspect docker.io/library/httpd:alpineIsso mostrará informações detalhadas sobre as imagens, como a data de criação, tamanho, diretório de trabalho padrão, comando de início, porta exposta e muito mais.

Você também pode especificar qual parte deseja verificar usando o parâmetro adicional assim:
podman inspect --format "size: {{.Size}}" docker.io/library/httpd:alpine
podman inspect --format "ports: {{.Config.ExposedPorts}}" docker.io/library/httpd:alpine
podman inspect --format "workdir: {{.Config.WorkingDir}}" docker.io/library/httpd:alpineIsso mostrará o tamanho da imagem, a porta exposta padrão e o diretório de trabalho padrão.
Executando Contêiner
Nesta seção, você aprenderá como executar o contêiner com o Podman.
Digite o seguinte comando para executar um novo contêiner chamado ‘httpd’, expor a porta 8080 na máquina host e usar a imagem ‘ httpd:alpine ‘. Além disso, o parâmetro ‘ –rm ‘ removerá automaticamente o contêiner ao parar o contêiner.
podman run -it --rm -d -p 8080:80 --name httpd docker.io/library/httpd:alpineSe bem-sucedido, você deve obter a string e número aleatórios do novo id do contêiner.
Verifique o contêiner em execução usando o seguinte comando. Você deve obter o contêiner ‘ httpd ‘ com o status ‘ Up ‘ e usar a porta 8080 na máquina host.
podman psEm seguida, você pode verificar o contêiner ‘httpd’ usando o comando curl abaixo. Certifique-se de substituir o endereço IP no exemplo abaixo pelo endereço IP do seu servidor.
curl http://192.168.5.20:8080/Se bem-sucedido, você deve obter uma saída como esta:
Além disso, você também pode acessar o contêiner ‘httpd’ através do navegador da web. Abra seu navegador da web e visite o endereço IP do servidor seguido pela porta do contêiner 8080 (ou seja: http://192.168.5.20:8080/).
Se bem-sucedido, você deve obter a página index.html padrão do contêiner ‘ httpd ‘ como esta:
Verificando os Logs do Contêiner
Com o contêiner ‘httpd’ em execução, agora você verificará os logs do contêiner. Saber disso é útil para depurar suas aplicações.
Para mostrar todos os logs do contêiner ‘ httpd ‘, execute o seguinte comando.
podman logs httpdEste é um exemplo de logs do contêiner ‘httpd’.
Em seguida, você pode reduzir a saída do log usando o parâmetro ‘ –tail ‘ assim:
podman logs --tail 20 httpdNeste exemplo, o parâmetro ‘tail 20 ‘ mostrará as últimas 20 linhas de logs do contêiner ‘ httpd ‘.
Parando o Contêiner
Agora, se você quiser parar o contêiner, basta executar o *podman stop*.
Execute o seguinte comando para parar o contêiner ‘ httpd ‘.
podman stop httpdUma vez que o contêiner ‘ httpd ‘ foi parado, execute o comando abaixo para verificar a lista de contêineres disponíveis em seu sistema.
podman ps
podman ps -aO contêiner ‘ httpd ‘ é automaticamente excluído após o contêiner ser parado. Isso ocorre porque você executou o contêiner com o parâmetro ‘ –rm ‘.
Executando Contêiner com Volume Personalizado
Neste exemplo, você executará um novo contêiner com volume personalizado. Isso montará o diretório local na máquina host para o contêiner.
Crie um novo diretório ‘ data ‘ dentro do diretório home do usuário alice. Em seguida, crie um novo arquivo ‘ index.html ‘ dentro do diretório ‘ data ‘ usando o editor nano.
mkdir -p ~/data/
nano ~/data/index.htmlInsira o seguinte script HTML.
Bem-vindo ao Container Nginx
Olá do contêiner httpd - Gerenciado com Podman
Salve e feche o arquivo.
Agora, execute o seguinte comando para executar um novo contêiner ‘httpd’ com o volume personalizado do diretório ‘ data ‘, que será montado no diretório ‘ /usr/local/apache2/htdocs ‘ no contêiner.
podman run --privileged=true -it --rm -d -p 8080:80 --name httpd -v ~/data:/usr/local/apache2/htdocs docker.io/library/httpd:alpineAlém disso, este contêiner está sendo executado com um parâmetro adicional ‘ –privileged=true ‘. Isso é para teste, e ainda assim o contêiner será executado como um usuário ‘ alice ‘ e não como o usuário root. Obtenha mais informações sobre as flags privilegiadas no Podman.
Em seguida, execute o seguinte comando para verificar o contêiner em execução em seu sistema.
podman psSe bem-sucedido, você deve ver o novo contêiner ‘ httpd ‘ com o status ‘ Up ‘ e a porta exposta 8080 na máquina host.
Execute o comando curl abaixo para verificar o novo contêiner ‘ httpd ‘.
curl http://192.168.5.21:8080/Você deve obter uma saída do script index.html que você criou anteriormente.

Como do navegador da web em http://192.168.5.21:8080/, você deve exibir a página personalizada como esta:

Fazendo Login no Contêiner
Com o contêiner ‘ httpd ‘ em execução, você pode acessar o contêiner via shell utilizando o comando ‘ podman exec ‘.
Faça login no contêiner ‘ httpd ‘ usando o seguinte comando. Isso executará o shell ‘ /bin/sh ‘ no contêiner ‘ httpd ‘ e o anexará à sua sessão atual.
podman exec -it httpd /bin/shUma vez logado, você deve estar no diretório ‘ WorkingDir ‘. Neste exemplo, o WorkingDir padrão é o diretório ‘ /usr/local/apache2 ‘.
Agora execute o seguinte comando no contêiner ‘ httpd ‘. Verifique o usuário atual, o endereço IP local do contêiner e o gateway padrão para o contêiner.
id
ip a
route -nVocê pode ter uma saída com um endereço IP e gateway diferentes, mas deve ser semelhante a isto:

Executando e Gerenciando Pod
No Podman, você pode criar e executar um Pod. O pod é um invólucro para contêineres, o que significa que múltiplos contêineres podem ser executados em um único Pod. Assim como no Kubernetes, o Pod é a menor entidade onde sua aplicação está em execução.
Com o Podman, você pode criar e executar um Pod, mesmo sem Kubernetes.
Execute o seguinte comando para criar um novo pod httpdTest com a imagem ‘ httpd:alpine ‘ e expor a porta 9090 na máquina host.
podman run -dt --pod new:httpdTest -p 9090:80 docker.io/library/httpd:alpineSe bem-sucedido, você deve obter a string e número aleatórios do id do Pod.
Agora execute o seguinte comando para verificar o Pod em execução em seu sistema.
podman pod lsVocê deve ver o Pod ‘ httpdTest ‘ com o status ‘ Running ‘ e 2 contêineres.

Você pode agora utilizar a opção ‘ inspect ‘ no pod assim:
podman pod inspect httpdTestVocê deve obter informações detalhadas sobre o pod httpdTest.

Você também pode verificar o número de contêineres que estão em execução dentro dos pods, incluindo os nomes dos contêineres, usando o seguinte comando.
podman pod inspect --format="containers: {{.NumContainers}}" httpdTest
podman pod inspect --format "{{.Containers}}" httpdTestVocê obterá uma saída como esta:
Por fim, execute o seguinte comando para acessar o pod httpdTest, que está em execução na porta 9090 na máquina host. Se bem-sucedido, você deve obter a página index.html padrão dos contêineres que estão em execução no pod httpdTest.
curl http://192.168.5.21:9090/Conclusão
Parabéns! Você agora instalou o Podman no AlmaLinux 9. Você também aprendeu o uso básico do Podman para gerenciar imagens e contêineres. Além disso, você também aprendeu como criar e executar um Pod com o Podman.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.