feat: add full Zonemaster stack with Docker and Spanish UI

- Clone all 5 Zonemaster component repos (LDNS, Engine, CLI, Backend, GUI)
- Dockerfile.backend: 8-stage multi-stage build LDNS→Engine→CLI→Backend
- Dockerfile.gui: Astro static build served via nginx
- docker-compose.yml: backend (internal) + frontend (port 5353)
- nginx.conf: root redirects to /es/, /api/ proxied to backend
- zonemaster-gui/config.ts: defaultLanguage set to 'es' (Spanish)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-21 08:19:24 +02:00
commit 8d4eaa1489
1567 changed files with 204155 additions and 0 deletions

37
zonemaster-cli/Dockerfile Normal file
View File

@@ -0,0 +1,37 @@
FROM zonemaster/engine:local AS build
RUN apk add --no-cache \
make \
perl-app-cpanminus \
perl-json-xs \
perl-lwp-protocol-https \
perl-mojolicious \
perl-test-deep \
perl-test-differences \
perl-try-tiny \
&& cpanm --notest --no-wget --from https://cpan.metacpan.org/ \
JSON::Validator
ARG version
COPY ./Zonemaster-CLI-${version}.tar.gz ./Zonemaster-CLI-${version}.tar.gz
RUN cpanm --notest --no-wget \
./Zonemaster-CLI-${version}.tar.gz
FROM zonemaster/engine:local
RUN apk add --no-cache \
perl-json-xs \
perl-try-tiny
COPY --from=build /usr/local/bin/zonemaster-cli /usr/local/bin/zonemaster-cli
# Include all the Perl modules we built
COPY --from=build /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/site_perl
COPY --from=build /usr/local/share/perl5/site_perl /usr/local/share/perl5/site_perl
USER nobody:nogroup
ENTRYPOINT [ "zonemaster-cli" ]
CMD [ "--help" ]