Imagem Docker. Para rodar projetos PHP em menos de 30 segundos.

Source: Dev.to | Jan 06, 2026 (UTC)

Release da imagem PHP Full da Convenia, com PHP 8.5

Nesta semana, lançamos a versão 8.5 da nossa imagem Docker para aplicações PHP, agora com PHP 8.5 e nesse post vamos falar um pouco de como utilizar essa imagem.

Na Convenia, a maior HR Tech do Brasil, utilizamos essa imagem de forma padronizada em todos os nossos projetos. Isso significa que qualquer desenvolvedor da equipe sabe exatamente como iniciar, testar e implantar aplicações sem surpresas no ambiente — seja em desenvolvimento, homologação ou produção. Nesse post abordamos todas as vantagens de padronizar a forma de executar aplicações

Essa imagem está disponível desde a versão 8.1, sendo amplamente testada e utilizada em produção em centenas de projetos e pipelines da Convenia e já acumula mais de 10K de pulls no Docker Hub.

O que é a imagem Docker PHP Full?

A imagem Docker PHP Full é um ambiente containerizado que já contém tudo o que aplicações PHP precisam para rodar com segurança e desempenho:

  • PHP pré-configurado com versões modernas
  • Servidor web integrado
  • Ferramentas úteis como Composer, cron e extensões comuns
  • Testes de integridade e atualizações regulares

A Convenia mantém esse padrão há diversas versões — do PHP 8.1 até o novo 8.5 — garantindo estabilidade e suporte contínuo para todos os projetos da empresa.

Como usar a imagem

Instalação

Para começar com a imagem PHP Full da Convenia, basta usar o Docker ou Docker Compose.

Usando Docker

docker run --rm -p 80:80 convenia/php-full:8.5

Enter fullscreen mode

Exit fullscreen mode

Ao acessar o seu localhost será possível ver uma documentação similar a essa

Essa página é a própria documentação da imagem sendo servida pelo PHP + nginx. No proximo exemplo com o docker compose vemos como executar a nossa aplicação dentro da imagem, é só montar um volume ou copiar a aplicação para o diretório /var/www/app dentro do container.

Usando com Docker Compose

Crie um arquivo docker-compose.yml na raiz do seu projeto:

services: app: image: convenia/php-full:8.5 container_name: app volumes: - .:/var/www/app ports: - "80:80"

Enter fullscreen mode

Exit fullscreen mode

Depois, execute:

docker-compose up -d

Enter fullscreen mode

Exit fullscreen mode

Esse arquivo pode ser colocado na raiz de um projeto Laravel por exemplo, e ao subir a stack do compose o projeto já deve executar sem maiores problemas.

Na verdade é possível colocar esse arquivo em qualquer aplicação PHP que tenha a pasta public como entrypoint do request, aplicações Symfony, Laravel. Se o entrypoint for na raiz apenas acrescente a pasta public ao montar o volume:

volumes: - .:/var/www/app/public

Enter fullscreen mode

Exit fullscreen mode

Atualizações automáticas

A imagem é construída e atualizada semanalmente para garantir o uso de versões seguras e livres de vulnerabilidades conhecidas, com escaneamento contínuo de dependências. O último build pode ser consultado no workflow do Github Actions

Segurança

Exemplos de customização

Substituir configuração do Nginx

Você pode substituir a configuração padrão do servidor web:

services: app: image: convenia/php-full:8.5 volumes: - ./nginx.conf:/etc/nginx/http.d/default.conf

Enter fullscreen mode

Exit fullscreen mode

Assim adapta o container às regras específicas do seu projeto.

Tarefas agendadas com cron

A imagem já inclui o binário cron, facilitando tarefas agendadas:

  1. Adicione um arquivo crontab com os comandos desejados;
  2. Copie para o container:

COPY crontab /etc/crontabs/root

Enter fullscreen mode

Exit fullscreen mode

  1. Inicie cron no container:

docker run --rm mycronimage crond -l 2 -f

Enter fullscreen mode

Exit fullscreen mode

Isso facilita execução de comandos como o scheduler do Laravel.

Conclusão

Seguem uma listinha com as vantagens da utilização dessa imagem em projetos PHP:

For further actions, you may consider blocking this person and/or reporting abuse

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Читайте також