Pular para o conteúdo

Cada subdiretório contém um Dockerfile + um solution.<ext> mínimo que só copia stdin pra stdout - não desfoca nada, não passa do threshold de PSNR. Existem pra mostrar o esqueleto de uma submissão funcional em várias linguagens.

LinguagemPastaImagem baseCompilação
Pythonpython/python:3.11-slim- (interpretado)
Node.jsjs/node:20-slim- (interpretado)
Cc/gcc:13 -> debian:bookworm-slimgcc -O2
C++cpp/gcc:13 -> debian:bookworm-slimg++ -O2 (-static-libstdc++)
Rustrust/rust:1.83-slim -> debian:bookworm-slimrustc -O
Gogo/golang:1.23-bookworm -> scratchgo build (CGO=0)
Zigzig/debian:bookworm-slim (+ Zig 0.15.1)zig build -Doptimize=ReleaseSafe (via build.zig)
Terminal window
docker build -t deblur-example example/python/
docker run --rm --read-only --network=none -i deblur-example \
< inputs/house.bmp > /tmp/out.bmp
# checa que entrada e saída são iguais
cmp inputs/house.bmp /tmp/out.bmp && echo OK

Troque python/ pela pasta da linguagem que você quiser usar.

Copie a subpasta da linguagem desejada pra solutions/<seu-usuario>/ e substitua a lógica do solution.<ext> pela sua. O Dockerfile e o contrato de stdin/stdout permanecem.