Ao falar sobre o futuro da tecnologia, muitos técnicos experientes sabem que a virtualização e a conteinerização são basicamente esse caminho. Eles permitem maior segurança de aplicativos e serviços e são facilmente gerenciados por outros serviços que permitem a captura de imagens, modelos e maior personalização do que você obtém com o modelo de um servidor por aplicativo. No entanto, nem sempre é completamente claro como você deve começar com a virtualização e a conteinerização. Já cobrimos a virtualização no Linux, Windows e macOS muitas vezes antes, mas a conteinerização tende a ser um pouco diferente. Estamos fornecendo a você neste artigo um guia para iniciantes em Podman no Linux, uma ótima ferramenta para conteinerização.
O que são recipientes?
Os contêineres são essencialmente pequenas máquinas virtuais – mas apenas para aplicativos. Eles usam muitos dos mesmos conceitos e carregam muitos dos mesmos recursos de segurança e facilidade de uso, mas são muito menores e permitem a fácil criação de imagens e distribuição de um aplicativo. É nisso que se baseiam os Flatpaks e os Snaps. Você pode começar a ver os paralelos: um programa, vários aplicativos executados em ambientes isolados.
O que é Podman?
Muitos de nós já ouvimos falar do Docker, o OG dos motores de contêiner. Podman é um mecanismo de contêiner semelhante que usa uma estrutura muito semelhante ao Docker com algumas diferenças importantes.
Uma é que o Podman não tem daemon, enquanto o Docker depende de um daemon. Isso significa que os contêineres do Podman podem funcionar sem permissões de nível raiz, permitindo mais segurança e flexibilidade. Um contêiner em execução no nível do usuário significa que os usuários só podem ver seus contêineres e os de mais ninguém. O Podman é mais leve em recursos do sistema devido à arquitetura mais simples, o que torna a experiência mais agradável.
A arquitetura sem daemon leva a algo chamado contêineres sem raiz. É um conceito que se baseia na diferença anterior, mas se concentra na segurança. Se um invasor comprometer seu contêiner e conseguir escapar por qualquer motivo, ele terá apenas permissões básicas de usuário em vez de permissões de root. Isso requer alguma configuração adicional para começar, e há algumas deficiências no momento, mas é algo que vale a pena dar uma olhada.
Instalando Podman
Para a maioria das distros, o Podman está nos repositórios principais, o que o torna um comando de instalação simples:
# Debian/Ubuntu sudo apt install podman # Fedora/CentOS/Redhat sudo dnf install podman # Arch Linux sudo pacman -S podman # OpenSUSE sudo zypper install podman # Gentoo sudo emerge app-emulation/podman
Usando Podman
A sintaxe de comando para iniciar um contêiner de Podman pode ser um pouco confusa, mas quando você começar a pegar o jeito, começará a reconhecer os padrões. Há um contêiner de amostra do projeto que você pode executar inserindo este comando no terminal:
podman run -dt -p 8080:8080/tcp -e HTTPD_VAR_RUN=/run/httpd -e HTTPD_MAIN_CONF_D_PATH=/etc/httpd/conf.d -e HTTPD_MAIN_CONF_PATH=/etc/httpd/conf -e HTTPD_CONTAINER_SCRIPTS_PATH=/usr/share/container-scripts/httpd/ registry.fedoraproject.org/f29/httpd /usr/bin/run-httpd
Isso puxará algumas imagens do registro que está listado e, quando terminar, você obterá um número longo. Você verá isso mais tarde, ao verificar os contêineres em execução.
Para verificar os contêineres do Podman em execução, digite o seguinte comando:
podman ps

Você verá o contêiner que iniciou anteriormente. Isso confirma que está em execução. No entanto, se você deseja olhar especificamente para a página da web que o Apache está executando, você executará o seguinte comando:
curl http://0.0.0.0:8080
Substituindo 0.0.0.0 com qualquer endereço IP mostrado quando você executou o podman ps comando. Você deve obter um monte de HTML truncado, mas se olhar bem no topo, você notará a sintaxe de um título em HTML e saberá que está funcionando.
<title>Test Page for the Apache HTTP Server on Fedora</title>
Imagens de Podman
Algo legal sobre o Podman é o uso de imagens. Você pode pesquisar outras imagens como o httpd ou outros programas que você esteja interessado em executar.
podman search CONTAINERNAME
Eu procurei por vncserver, e é isso que eu tenho. Você pode ver que existem muitas opções e tudo se resumirá à sua preferência pessoal.

Para obter uma dessas imagens, execute o podman pull comando.
podman pull CONTAINERNAME
É recomendável que você obtenha o url completo para que o registro do contêiner seja totalmente preciso. Por exemplo, o comando que estou executando é:
podman pull docker.io/michaelaboeckler/vncserver
ao invés de apenas correr podman pull vncserver porque pode haver imagens que eu não quero que sejam escolhidas em vez desta que eu quero.

Você também pode verificar suas imagens com este comando:
podman images
E pare os contêineres com este comando:
podman stop -l
O -l sinalizador significa que parará o contêiner de execução mais recente, mas você também pode usar o -a sinalize para parar todos os contêineres.
Você deve ter notado que o Podman também pode olhar no docker.io para imagens de contêiner. Isso ocorre porque os comandos do Podman e os comandos do Docker são essencialmente os mesmos – tanto que às vezes é recomendado alias ao docker comando para podman como isso:
alias docker='podman'
Isso significa que sempre que você entrar docker, sua máquina irá executar o podman comando de qualquer maneira.
Podman sem raízes
Para configurar seu sistema para contêineres sem raiz, há algumas configurações a serem feitas, mas há uma grande documentação sobre seus Página do Github.
Espero que você tenha gostado desta introdução sobre o Podman, uma ótima pequena ferramenta que permitirá que você execute contêineres sem daemon e sem raiz para manter seu sistema enxuto, organizado e seguro. Se você fez isso, certifique-se de verificar alguns dos nossos outros conteúdos de contêiner, como nossos guias sobre como executar o Ubuntu em um contêiner no ChromeOS, copiar contêineres do Docker para outro host e limitar os recursos do contêiner do Docker.
Apoie o nosso trabalho ❤️
Se você gostou deste artigo, considere deixar uma gorjeta para nos ajudar a continuar publicando conteúdo de qualidade.



















