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:
76
zonemaster-engine/Dockerfile
Normal file
76
zonemaster-engine/Dockerfile
Normal file
@@ -0,0 +1,76 @@
|
||||
FROM zonemaster/ldns:local AS build
|
||||
|
||||
RUN apk add --no-cache \
|
||||
# Only needed for CPAN deps
|
||||
gcc \
|
||||
make \
|
||||
musl-dev \
|
||||
perl-dev \
|
||||
# Transitive deps included to improve build speed
|
||||
perl-mailtools \
|
||||
perl-module-build-tiny \
|
||||
# Compile-time dependencies
|
||||
perl-app-cpanminus \
|
||||
perl-class-accessor \
|
||||
perl-clone \
|
||||
perl-file-sharedir \
|
||||
perl-file-slurp \
|
||||
perl-io-socket-inet6 \
|
||||
perl-list-moreutils \
|
||||
perl-locale-msgfmt \
|
||||
perl-log-any \
|
||||
perl-lwp-protocol-https \
|
||||
perl-mail-spf \
|
||||
perl-module-install \
|
||||
perl-pod-coverage \
|
||||
perl-readonly \
|
||||
perl-sub-override \
|
||||
perl-test-differences \
|
||||
perl-test-exception \
|
||||
perl-test-fatal \
|
||||
perl-test-nowarnings \
|
||||
perl-test-pod \
|
||||
perl-text-csv \
|
||||
perl-yaml \
|
||||
perl-yaml-libyaml \
|
||||
&& cpanm --no-wget --from=https://cpan.metacpan.org/ \
|
||||
Email::Valid \
|
||||
List::Compare \
|
||||
Locale::PO \
|
||||
Locale::TextDomain \
|
||||
Module::Find \
|
||||
Net::IP::XS
|
||||
|
||||
ARG version
|
||||
|
||||
COPY ./Zonemaster-Engine-${version}.tar.gz ./Zonemaster-Engine-${version}.tar.gz
|
||||
|
||||
RUN cpanm --notest --no-wget \
|
||||
./Zonemaster-Engine-${version}.tar.gz
|
||||
|
||||
FROM zonemaster/ldns:local
|
||||
|
||||
# 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
|
||||
|
||||
RUN apk add --no-cache \
|
||||
# All the locales we need and more
|
||||
musl-locales \
|
||||
# Run-time dependencies
|
||||
perl-class-accessor \
|
||||
perl-clone \
|
||||
perl-file-sharedir \
|
||||
perl-file-slurp \
|
||||
perl-io-socket-inet6 \
|
||||
perl-list-moreutils \
|
||||
perl-locale-msgfmt \
|
||||
perl-log-any \
|
||||
perl-mail-spf \
|
||||
perl-mailtools \
|
||||
perl-module-install \
|
||||
perl-net-ip \
|
||||
perl-readonly \
|
||||
perl-text-csv \
|
||||
perl-try-tiny \
|
||||
perl-yaml-libyaml
|
||||
Reference in New Issue
Block a user