DEV Community

Danilo Maia Florenzano
Danilo Maia Florenzano

Posted on

2 1 1 1 1

Podman com Quadlets em produção

Aluguei uma VPS e queria disponibilizar uma API que desenvolvi.

Optei por utilizar contêineres. A escolha do Podman foi feita considerando o objetivo de melhorar minha afinidade com a ferramenta e, também, usufruir da integração nativa com o systemd.

Para atingir um resultado satisfatório, considerando a inicialização dos contêineres no boot e a possibilidade de acompanhar logs pelo journalctl, executei os seguintes passos:


  1. Criei um pod com os contêineres necessários.

  2. Gerei um arquivo YAML para Kubernetes a partir do pod:

    podman generate kube xpto-pod -f /tmp/my_pod_kube.yaml
    
  3. Criei um arquivo .kube, referenciando o .yaml gerado:

    xpto-pod.kube

    [Unit]
    Description=Serviço XPTO
    After=network-online.target
    Wants=network-online.target
    
    [Install]
    WantedBy=multi-user.target
    
    [Service]
    Restart=on-failure
    RestartSec=5s
    TimeoutStartSec=900
    
    [Kube]
    Yaml=/tmp/my_pod_kube.yaml
    PublishPort=8080:80
    LogDriver=journald
    SetWorkingDirectory=yaml
    KubeDownForce=true
    

    Obs: A seção [Install] é essencial para que o systemd inicie o pod automaticamente no boot.

  4. Movi o arquivo para a pasta correta:

    sudo mv xpto-pod.kube /etc/containers/systemd/
    
  5. Recarreguei os serviços do systemd:

    sudo systemctl daemon-reexec
    sudo systemctl daemon-reload
    
  6. Finalizado! Para verificar se o serviço está em execução:

    systemctl status xpto-pod.service
    

Continuo explorando formas de usar o Podman e suas ferramentas e integrações.

Fontes que utilizei para alcançar esse resultado:

Heroku

Build AI apps faster with Heroku.

Heroku makes it easy to build with AI, without the complexity of managing your own AI services. Access leading AI models and build faster with Managed Inference and Agents, and extend your AI with MCP.

Get Started

Top comments (2)

Collapse
 
andredarcie profile image
André N. Darcie

Grande mestre Danilo, compartilhando todo o seu conhecimento! Curti demais o post!
Achei muito legal a forma como você integrou tudo com o systemd — ficou direto ao ponto e fácil de seguir.
Mandou bem demais! Valeu por compartilhar! 👊

Collapse
 
daniloflorenzano profile image
Danilo Maia Florenzano

A integração fica bem bacana mesmo. Muito obrigado!

Some comments may only be visible to logged-in visitors. Sign in to view all comments.

Billboard image

Try REST API Generation for MS SQL Server.

DreamFactory generates live REST APIs from database schemas with standardized endpoints for tables, views, and procedures in OpenAPI format. We support on-prem deployment with firewall security and include RBAC for secure, granular security controls.

See more!

👋 Kindness is contagious

If this **helped, please leave a ❤️ or a friendly comment!

Okay