Podman Tutorial · 8 min read · Feb 11, 2026

Introdução ao Podman: Gerenciar Imagens, Contêineres e Volumes

Podman é um tempo de execução de contêiner que fornece recursos semelhantes ao Docker. Faz parte da biblioteca libpod e pode ser usado para gerenciar pods, contêineres, imagens de contêiner e volumes de contêiner. O Podman é muito diferente do Docker, que usa a arquitetura cliente-servidor e requer um daemon do docker para ser executado, enquanto o Podman não requer nenhum daemon para ser executado e também pode ser executado perfeitamente sem privilégios de root.

Neste tutorial, mostraremos o uso básico do Podman para gerenciar contêineres, imagens e volumes, e criar imagens de contêiner. Para completar este guia, você deve ter o Podman instalado. Aqui estão guias para diferentes sistemas operacionais:

  • Como instalar o Podman no Ubuntu 22.04
  • Introdução ao Podman (Alternativa ao Docker) no Rocky Linux
  • Como instalar e usar o Podman (Alternativa ao Docker) no Ubuntu 20.04
  • Como instalar o Podman como alternativa ao Docker no Debian 11

Pré-requisitos

  • Servidor Ubuntu com Podman instalado
  • Conhecimento básico de Docker facilitará

1. Comando Básico do Podman

Após instalar o Podman no sistema Ubuntu, devemos saber como verificar o próprio Podman. Precisamos verificar a versão que já está instalada no sistema, o ambiente do sistema Podman e o uso básico de ajuda.

Para obter a versão instalada do Podman na máquina, use o seguinte comando.

podman version

Qualquer versão do Podman > 1.0.1 estará boa para este guia.

Agora verifique a configuração do ambiente do Podman.

podman info

E você verá o ambiente do sistema da instalação do Podman. Incluindo as informações dos pacotes do Host, Registries e Armazenamento.

Ambiente Podman

Em seguida, execute o seguinte comando para mostrar todas as opções de comando disponíveis do Podman.

podman --help

Para exibir ajuda para um comando específico, você pode usar como abaixo.

podman pod help

Ajuda do Podman

2. Gerenciar Imagens de Contêiner usando Podman

Agora estamos passando para a gestão de imagens de contêiner com o Podman. Existem alguns comandos básicos que você deve conhecer relacionados à gestão de imagens de contêiner, incluindo pesquisa de imagens, download de imagens, exibição de imagens disponíveis no sistema local e remoção de imagens.

Execute o comando abaixo para pesquisar uma imagem.

podman search nginx

O comando irá procurar por imagens que contenham a palavra ‘nginx’ em todos os repositórios disponíveis que já estão definidos no arquivo de configuração ‘/etc/containers/repositories.conf’.

Pesquisar imagem Podman

Agora baixe algumas imagens usando os comandos ‘podman pull’ abaixo.

podman pull docker.io/library/nginx  
podman pull docker.io/library/alpine

Uma vez que esteja completo, verifique todas as imagens disponíveis na máquina do servidor.

podman images

Agora você terá as imagens nginx e alpine no sistema.

obter imagens com o comando podman pull

Para remover a imagem alpine, você pode usar a opção ‘rmi’ como abaixo.

podman rmi alpine

remover imagem podman

Como resultado, você terá apenas a imagem de contêiner nginx no sistema.

3. Gerenciar Contêineres

Neste estágio, aprendemos sobre a gestão de imagens de contêiner. E o próximo passo, aprenderemos como criar e gerenciar contêineres com o Podman.

Para criar um novo contêiner, podemos usar o comando ‘podman run’ como abaixo.

podman run -d -p 8000:80 --name hakase-nginx docker.io/library/nginx

O comando criará um novo contêiner chamado ‘hakase-nginx’ baseado na imagem nginx e exporá a porta 8000 na máquina host.

Detalhes das opções do comando:

-d - mantém o contêiner em execução em segundo plano e apenas imprime o ID do contêiner como resultado.
-p 8000:80 - mapeamento de porta para o contêiner e o sistema host. Porta 8000 na máquina host e porta 80 no contêiner.
–name hakase-nginx - especifica o nome do contêiner como ‘hakase-nginx’.

Agora exiba todos os contêineres em execução no sistema.

podman ps

E você verá que o contêiner chamado ‘hakase-nginx’ está ativo e em execução.

Se você quiser verificar todos os contêineres disponíveis, pode usar a opção ‘-a’.

podman ps -a

Agora você verá todos os contêineres disponíveis com diferentes estados.

Depois de obter todos os contêineres em execução na máquina host, mostraremos como verificar todos os processos dentro do contêiner, anexá-lo ao contêiner em execução e parar e remover o contêiner.

Para verificar o processo dentro do contêiner em execução, use o seguinte comando.

podman top hakase-nginx

Agora, para anexar e acessar o contêiner em execução, você pode usar o comando ‘exec’ como abaixo.

podman exec -it hakase-nginx /bin/bash

Dentro do contêiner ‘hakase-nginx’, verifique a versão do nginx nele.

nginx -V

Você obterá o resultado como abaixo.

Gerenciar contêineres Podman

Agora digite ‘exit’ para sair do contêiner.

Em seguida, pare o contêiner ‘hakase-nginx’.

podman stop hakase-nginx

Então remova o contêiner.

podman rm hakase-nginx

Iniciar e parar Podman

Se você quiser forçar a parada e remoção do contêiner em execução, pode usar ‘-f’ para forçar a opção.

podman rm hakase-nginx -f

4. Gerenciar Volume

Desde a versão 0.12, o Podman tem suporte para criar e gerenciar volumes apenas locais. Portanto, se você estiver usando uma versão mais antiga, não obterá este comando ‘podman volume’.

Agora crie um novo volume local usando o seguinte comando.

podman volume create hakase-volume

Depois disso, exiba todos os volumes disponíveis no sistema.

podman volume ls

E você verá o ‘hakase-volume’ na lista.

Para verificar detalhes sobre o volume ‘hakase-volume’, podemos usar a opção ‘inspect’ como abaixo.

podman volume inspect hakase-volume

E você verá que o ‘mountPoint’ do volume é o diretório local ‘/var/lib/containers/storage/hakase-volume/_data’.

Gerenciar volumes Podman

Vá para esse diretório e crie um novo arquivo index.html.

cd /var/lib/containers/storage/hakase-volume/_data  
echo "

Este é o índice personalizado e volume - Olá Podman

" > index.html

Agora crie um novo contêiner e monte o ‘hakase-volume’ dentro do contêiner.

podman run -d -p 8000:80 -v hakase-volume:/usr/share/nginx/html --name hakase-nginx docker.io/library/nginx

Uma vez que o contêiner é criado, verifique os volumes disponíveis no contêiner usando o seguinte comando.

podman inspect -f '{{ json .Mounts }}' hakase-nginx | jq

Na parte inferior do resultado, você verá o ‘hakase-volume’ no contêiner.

Montagens de volume

Em seguida, verifique o endereço IP do contêiner.

podman inspect -f '{{ .NetworkSettings.IPAddress }}' hakase-nginx

Acesse o contêiner na porta HTTP usando httpie.

http http://10.88.0.4/

E você obterá o arquivo index.html personalizado que foi criado no ‘hakase-volume’.

acessar volume do contêiner

Agora, se você quiser remover o volume, pode usar a opção ‘rm’.

podman volume rm hakase-volume

E o ‘hakase-volume’ será removido.

5. Criar Imagens Personalizadas com Commit

Agora vamos criar imagens de contêiner personalizadas usando o Podman. Basicamente, o Podman permite que você crie imagens personalizadas com base no contêiner alterado ou crie novas imagens personalizadas usando o ‘Dockerfile’.

Nesta seção, vamos criar novas imagens personalizadas com base no contêiner alterado através do comando ‘podman commit’.

Baixe/puxe a imagem mestre ‘ubuntu’.

podman pull docker.io/library/ubuntu

Agora execute o contêiner baseado na imagem ubuntu. E dentro do contêiner, execute o comando ‘bash’ que atualizará os repositórios e instalará o pacote nginx.

podman run --name container-temp ubuntu bash -c "apt update && apt install -y nginx"

Aguarde a instalação do nginx dentro do contêiner.

Usar commit para criar imagens personalizadas

Uma vez que esteja completo, crie uma nova imagem personalizada com base no ‘container-temp’ usando o seguinte comando.

podman commit container-temp my-nginx

Em seguida, verifique as imagens disponíveis no sistema.

podman images

E você verá uma nova imagem chamada ‘my-nginx’ na lista.

Imagem personalizada criada

Se você quiser executar o contêiner baseado na imagem ‘my-nginx’, execute o seguinte comando.

podman run -dt -p 8001:80 --name nginx01 my-nginx /usr/sbin/nginx -g 'daemon off;'

Agora verifique o contêiner em execução e verifique seu endereço IP.

podman ps  
podman inspect --format '{{ .NetworkSettings.IPAddress }}' nginx01

E você verá que o contêiner ‘nginx01’ está ativo e em execução. Depois disso, acesse a porta HTTP no contêiner ‘nginx01’.

http -p h 10.88.0.19

Como resultado, você obterá a resposta do cabeçalho HTTP como abaixo.

teste nginx

6. Criar Imagens Personalizadas com Dockerfile

Agora vamos criar uma nova imagem de contêiner personalizada usando o Dockerfile.

Crie um novo diretório de projeto e crie um novo ‘Dockerfile’ dentro.

mkdir project; cd project/  
vim Dockerfile

Cole a seguinte configuração.

FROM ubuntu  

# Instalar Nginx  
RUN \  
  apt-get update && \  
  apt-get install -y nginx && \  
  rm -rf /var/lib/apt/lists/* && \  
  echo "\ndaemon off;" >> /etc/nginx/nginx.conf && \  
chown -R www-data:www-data /var/lib/nginx  

# Definir diretórios montáveis.  
VOLUME ["/etc/nginx/sites-enabled", "/etc/nginx/certs", "/etc/nginx/conf.d", "/var/log/nginx", "/var/www/html"]  

# Definir o diretório de trabalho.  
WORKDIR /etc/nginx  

# Definir comando padrão.  
CMD ["nginx"]  

# Expor portas.  
EXPOSE 80  
EXPOSE 443

Salve e feche.

Agora execute o podman abaixo para construir uma nova imagem personalizada usando o Dockerfile.

podman build -t hakase-image .

Usar Dockerfiles para criar imagens

Uma vez que esteja completo, verifique a nova imagem na máquina.

podman images

E você verá a ‘hakase-image’.

Listar imagens podman

Em seguida, crie um novo contêiner baseado na ‘hakase-image’ executando o seguinte comando.

podman run -d -p 8002:80 --name nginx02 hakase-image

Depois disso, verifique o contêiner ‘nginx02’ e seu endereço IP.

podman ps  
podman inspect --format '{{ .NetworkSettings.IPAddress }}' nginx02

Certifique-se de que o contêiner ‘nginx02’ está ativo e em execução.

Agora verifique o contêiner usando a ferramenta httpie.

http 10.88.0.21

E você verá a página padrão do Nginx e seu cabeçalho HTTP.

teste de acesso à imagem

Finalmente, agora você pode gerenciar contêineres, imagens e volumes usando o Podman. E você pode criar novas imagens personalizadas para sua aplicação usando o Dockerfile.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.