Sobre o projeto
Ambiente Docker que permite operar o EC-CUBE 4 com a mesma configuração tanto em ambiente de desenvolvimento quanto de produção. O ambiente de desenvolvimento é iniciado com git clone e bin/init.sh, e a publicação em produção é feita via bin/publish.sh. Pode ser implementado com os mesmos procedimentos, seja em VPS ou AWS.
Como diretriz de design, o corpo do EC-CUBE é integrado (bake) na imagem Docker (obtido via composer create-project) e não é incluído no repositório. A alteração de versão é realizada através da reconstrução da imagem. Apenas o código proprietário é gerenciado pelo Git, utilizando uma estrutura onde apenas os diretórios necessários, como app/Customize, app/template, app/DoctrineMigrations, app/Plugin e html/user_data, são sobrepostos via bind-mount. Imagens carregadas são armazenadas em um volume dedicado (substituível por NFS/EFS).
Com base no compose.yaml, estão disponíveis configurações de override para desenvolvimento, para produção e configurações apenas da camada app para múltiplos hosts. Para o DB, é possível escolher entre MariaDB/MySQL ou PostgreSQL. O PHP é selecionado através da tag da imagem de distribuição, com patches aplicados semanalmente. Compatível com amd64/arm64.
No ambiente de desenvolvimento, Mailpit e phpMyAdmin estão disponíveis. Scripts de operação como deploy, console, shell, plugin, test, backup e restore estão disponíveis em bin/. O design garante que os comandos dentro do container sejam executados fixamente como www-data, evitando erros 500 causados pela geração de arquivos com permissões de root. A documentação em docs/ está dividida em tópicos como instalação, customização, atualização de versão, deploy, backup, escala, monitoramento, testes e configurações de IDE.
A licença é Apache License 2.0 (apenas para os arquivos do repositório). O corpo do EC-CUBE está sujeito a outra licença (licença dual GPL/comercial).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.