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

View File

@@ -0,0 +1,39 @@
FROM alpine:3.22 as build
RUN apk add --no-cache \
# Compile-time dependencies
build-base \
libidn2-dev \
make \
openssl-dev \
perl-app-cpanminus \
perl-dev \
perl-devel-checklib \
perl-extutils-depends \
perl-extutils-pkgconfig \
perl-lwp-protocol-https \
perl-mime-base32 \
perl-module-install \
perl-test-differences \
perl-test-fatal \
perl-test-nowarnings \
&& cpanm --notest --no-wget --from=https://cpan.metacpan.org/ \
Module::Install::XSUtil
ARG version
COPY ./Zonemaster-LDNS-${version}.tar.gz ./Zonemaster-LDNS-${version}.tar.gz
RUN cpanm --notest --no-wget \
./Zonemaster-LDNS-${version}.tar.gz
FROM alpine:3.22
# Include only Zonemaster LDNS modules
COPY --from=build /usr/local/lib/perl5/site_perl/auto/Zonemaster /usr/local/lib/perl5/site_perl/auto/Zonemaster
COPY --from=build /usr/local/lib/perl5/site_perl/Zonemaster /usr/local/lib/perl5/site_perl/Zonemaster
RUN apk add --no-cache \
# Run-time dependencies
libidn2 \
perl