Realizado

Criar a configuração do Docker para uma aplicação Php em produção

Publicado em 10 de Março de 2025 dias na TI e Programação

Sobre este projeto

Aberto

Estamos migrando a nossa infraestrutura e precisamos migrar nossa aplicação para rodar no Docker ou outra alternativa (aceitamos sugestões). No nosso ambiente de desenvolvimento local já utilizamos o Docker, então não precisaria fazer ajustes na aplicação, precisamos "apenas" da configuração do Docker (Dockerfile, etc) para rodar o ambiente de produção, com otimizações de performance e segurança.

Contexto Geral do Projeto

A nossa aplicação é um SaaS de lojas e-commerce. Hoje a aplicação roda em um servidor dedicado onde tem instalado o DirectAdmin (painel de gerenciamento), então acessamos como se fosse o painel de uma hospedagem simples. Queremos sair da dependência de um painel e deixar a aplicação rodando somente com os recursos necessários. A aplicação é "dividida" em duas partes: a aplicação (irei chamar aqui de front) e a API da aplicação (back). Então precisaríamos da configuração do docker para os dois. O "front" está rodando o framework Codeigniter com php fpm 7.3 e Apache. O back está rodando o framework Laravel com php fpm 8.4 e Apache. Temos dependencia de alguma bibliotecas que posso referênciar depois, como o Sendmail, GD, Imagick, SOAP, Redis. Ao longo do tempo foram feitas algumas configurações do PHP e Apache no servidor para se adaptar ao nosso fluxo de usuários que gostaríamos de manter (aceitamos recomendações também de otimizações e segurança). Nosso código hoje se encontra no GitHub e temos Actions de deploy automático que podemos adaptar do nosso lado para se integrar com a nova estrutura. Um ponto extremamente importante: Além do nosso domínio que acessa as duas "divisões" da nossa aplicação (dominio.com.br e api.dominio.com.br), os nossos clientes podem apontar o domínio deles para o nosso e utilizar o domínio próprio deles (exceto na API, que sempre é o nosso domínio mesmo). Então precisaríamos que a configuração do Apache permita isso sem precisar ficar alterando a cada mudança de domínio dos clientes.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Funções necessárias Desenvolvedor

Prazo de Entrega: Não estabelecido

Habilidades necessárias

Outro projetos publicados por Primol.