Skip to content

feat: add DNS & Hostname Manager to server settings#8936

Open
00gxd14g wants to merge 4 commits intocoollabsio:nextfrom
00gxd14g:feature/dns-hostname-manager
Open

feat: add DNS & Hostname Manager to server settings#8936
00gxd14g wants to merge 4 commits intocoollabsio:nextfrom
00gxd14g:feature/dns-hostname-manager

Conversation

@00gxd14g
Copy link

Changes

Added a new DNS & Hostname Manager page under server settings that provides a centralized interface for managing DNS-related configurations on managed servers:

  • View and update the server hostname via hostnamectl set-hostname
  • Manage /etc/hosts entries (view, add, remove) with protection for system entries (127.0.0.1, ::1)
  • Manage DNS resolvers in /etc/resolv.conf (view, add, remove) with protection against removing the last resolver
  • View raw /etc/resolv.conf content for reference
  • Input validation for IP addresses and hostnames
  • Authorization checks using existing server policies

Issues

  • This feature addresses the need for DNS management directly from the Coolify UI without requiring SSH access to the server.

Category

  • New feature

Preview

The DNS & Hostname Manager page is accessible from the server settings navbar under "DNS & Hostname". It includes sections for:

  1. Hostname - View current hostname, set a new one
  2. /etc/hosts - Table view of entries with add/remove functionality
  3. DNS Resolvers - List of nameservers with add/remove functionality
  4. Raw resolv.conf - Read-only view of the full resolv.conf file

AI Assistance

  • AI was used (please describe below)

If AI was used:

  • Tools used: Claude Code (Claude Opus 4.6)
  • How extensively: Assisted with code extraction from development container, repository setup, and PR creation. The DNS Manager feature logic and UI were developed by the contributor.

Testing

  • Tested on a live Coolify instance (v4.0.0-beta.468) running in Docker
  • Verified hostname update functionality with hostnamectl set-hostname
  • Verified /etc/hosts entry addition and removal
  • Verified DNS resolver addition and removal in /etc/resolv.conf
  • Verified input validation for IP addresses and hostname formats
  • Verified authorization checks prevent unauthorized modifications

Contributor Agreement

Important

  • I have read and understood the contributor guidelines. If I have failed to follow any guideline, I understand that this PR may be closed without review.
  • I have searched existing issues and pull requests (including closed ones) to ensure this isn't a duplicate.
  • I have tested all the changes thoroughly with a local development instance of Coolify and I am confident that they will work as expected when a maintainer tests them.

🤖 Generated with Claude Code

Add a comprehensive DNS management Livewire component that provides:
- Hostname viewing and updating via hostnamectl
- /etc/hosts entries management (add/remove)
- DNS resolver (nameserver) configuration via resolv.conf
- Search domains management
- DNS lookup tool using dig with configurable record types and servers
- DNS zone records query (A, AAAA, CNAME, MX, TXT, NS, SOA, CAA, SRV)
- DNS propagation checker across major public DNS servers worldwide
- Raw resolv.conf editor with validation

All operations are performed via SSH on the target server.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@00gxd14g 00gxd14g force-pushed the feature/dns-hostname-manager branch from 0962c4f to 6160165 Compare March 13, 2026 13:40
00gxd14g and others added 3 commits March 13, 2026 13:48
…lize propagation

- Remove 5 unused zone record form properties
- Add authorize() to dnsLookup, queryZoneRecords, checkPropagation
- Remove invalid +ttlid dig flag
- Run all propagation DNS queries in parallel via single SSH call

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Expand DNS Manager into a comprehensive DNS management panel:

- DNS Server tab: BIND9 install/start/stop/restart, status detection
- Zone Management: create/delete master & slave zones, auto-generated
  SOA, NS, and glue records with server IP
- Zone Editor: visual CRUD for all record types (A, AAAA, CNAME, MX,
  TXT, NS, SRV, CAA, PTR, SOA) with inline editing
- Record validation: type-specific checks (IPv4/IPv6, domain, MX, SRV
  format, CAA format)
- Quick templates: one-click pre-fill for common records (SPF, DMARC,
  CAA Let's Encrypt, NS glue records, www CNAME)
- Raw zone file editor with named-checkzone validation
- Zone import/export with validation
- Serial auto-increment (YYYYMMDDNN format)
- Tab-based UI: Server Config, DNS Server, Zone Editor, DNS Tools
- Optimized: batched SSH calls, parallel propagation queries

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant