Files
Malin 8d4eaa1489 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>
2026-04-21 08:19:24 +02:00

3.3 KiB

Build Environment Preparation

Overview

The build environment is used for several purposes, but the purpose is not for the actual installation of Zonemaster. For the installation the normal installation instructions for users should be used. In most cases, if you create a build environment you usually do not install Zonemaster on that.

  • When testing the installation instructions for users you should avoid to do that from a build environment.
  • For the use cases below, your should in most cases make sure that you use the develop branch.
  • You should probably read this file from the develop branch, not master branch to get the latest changes.

Use cases

  1. Creating Perl tarballs for testing 1).
  2. Creating Perl tarballs for uploading to CPAN as part of a Zonemaster release 1).
  3. Creating Zonemaster-GUI zip distribution for testing.
  4. Creating Zonemaster-GUI zip distribution for release.
  5. Translation work (PO file updates).
  6. Updating documents in Zonemaster/Zonemaster by scripts in utils README as part of release.
  7. Check for broken, internal links in mdBook as part of release.
  8. Development work.

There could be more use cases.

1) Zonemaster-LDNS, Zonemaster-Engine, Zonemaster-CLI and Zonemaster-Backend.

Building Perl CPAN packages

To create a Perl tarball (use cases 1 and 2) you need a specific environment. Once you have set up your build environment follow the building instructions as described in Create Test Distribution document of the release process.

Build environments:

GUI zip distribution

For use cases 3 and 4, install Ubuntu Node.js environment.

Translation work

For use case 5 (which applies for Zonemaster-Engine and Zonemaster-CLI) install one of the environments listed for use case 1 and 2 and then follow the Zonemaster-Engine instructions for translators.

Updating documents

For use case 6, install one of the environments listed for use cases 1 and 2, and then follow the installation instructions for Zonemaster-Engine. Make sure that you install from develop branch.

For use case 7, install according to the build environment instructions (see above).

Development work

For use case 8, install an environment as for use cases 1 or 3. Additional installation might be needed.