Skip to content

feat(docker,env): otimização dinâmica para perfis leves e harmonização de variáveis de ambiente - #418

Open
wennerl77 wants to merge 6 commits into
UnitedOpen-Source:masterfrom
wennerl77:feature/dynamic-docker-slim
Open

wennerl77 wants to merge 6 commits into
UnitedOpen-Source:masterfrom
wennerl77:feature/dynamic-docker-slim

Conversation

@wennerl77

Copy link
Copy Markdown
Collaborator

Descrição

Esta PR introduz otimizações no processo de build do Docker para perfis leves (como maratona), disponibiliza utilitários zero-host para Composer/Artisan e harmoniza integralmente as variáveis de ambiente em .env.example e na stack Docker sem expor secrets.

Principais mudanças

  1. Otimização de Build Dinâmico (Closes Build: Otimização dinâmica para perfis leves (Maratona) #416):

    • Suprime estágios pesados de compilação multi-stage (Portugol, Scratch, Prolog, etc.) quando utilizado o perfil leve maratona ou minimal.
    • Adiciona script para processar Dockerfiles temporários de forma isolada em container Python.
    • Corrige passagem de argumentos de build JUDGE_PROFILE e permissões (privileged e cap_add) nos workers de fila e scheduler.
  2. Harmonização e Documentação de Variáveis de Ambiente (.env.example & .env.docker):

    • Sincronização completa de todas as variáveis suportadas pela aplicação.
    • Nenhuma secret ou credencial sensível é exposta no .env.example (valores em branco para chaves e senhas).
    • Documentação de seções para portas Docker, permissões de usuário (DOCKER_UID / DOCKER_GID), auto-judge básico e avançado (cgroups/bwrap), módulos de detecção de similaridade (JPlag), judgehost distribuído, chamados SOS, impressão e feed ICPC CLICS.
    • Parametrização das credenciais de administrador padrão geradas na seed inicial (DEFAULT_ADMIN_*).
  3. Ferramental Zero-Host:

    • Inclusão de serviços CLI efêmeros (composer, artisan, node) no docker-compose.yml com mapeamento correto de UID/GID.
    • Script automatizado de configuração e verificação idempotente em scripts/docker-setup.sh integrado ao Makefile.

…bile sidebar transition and update build assets
… docker zero-host

- Harmoniza variáveis de ambiente do .env.example com a aplicação sem expor secrets
- Adiciona documentação para módulos adicionais (JPlag/Similaridade, Judgehost, Sandbox, SOS, Printing)
- Inclui mapeamento DOCKER_UID/DOCKER_GID para paridade de permissões de usuário
- Adiciona serviços utilitários composer/artisan/node no docker-compose para execução zero-host
- Adiciona script automatizado scripts/docker-setup.sh e atalhos no Makefile
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build: Otimização dinâmica para perfis leves (Maratona)

1 participant