[PR #404] Add txt_limit config option #406

Open
opened 2026-03-13 16:22:01 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/acme-dns/acme-dns/pull/404
Author: @warmanton
Created: 2/12/2026
Status: 🔄 Open

Base: masterHead: txtlimit_config_option


📝 Commits (2)

  • 11fb6ba Add Dockerfile.local for local build, add layer for go deps
  • dde1af5 Add "txt_limit" config option

📊 Changes

5 files changed (+56 additions, -8 deletions)

View changed files

Dockerfile.local (+34 -0)
📝 config.cfg (+4 -1)
📝 pkg/acmedns/config.go (+5 -0)
📝 pkg/acmedns/types.go (+1 -0)
📝 pkg/database/db.go (+12 -7)

📄 Description

Adds txt_limit config option which allows to specify number of TXT records per subdomains.
acme-dns has hardcoded limit for only two TXT records and this is enough for almost all LE certs.
But in some cases two TXT per account is not enough. For example:

  1. Cert with multiple domains
  • acme.sh + acme-dns is used
  • need to issue cert with named "domain1.com, *.domain1.com, domain2.com"
  • acme.sh has no ability to specify DNS management account1 for domain1 and account2 for domain2 and user has to use single acme-dns account for all domains in single cert
  1. some one can use single acme-dns account for all his domain and can get issues for limit in two TXT records

Option 'txt_limit' allows to increase number of TXT record for these specific cases and the default number is two.

Also "Dockerfile.local" is provided for build from local sources. Build is splitted in two parts (multiple docker layers): layers for do deps and layers for bo build. This allows to re-use go deps installed previously and cached in docker cache


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/acme-dns/acme-dns/pull/404 **Author:** [@warmanton](https://github.com/warmanton) **Created:** 2/12/2026 **Status:** 🔄 Open **Base:** `master` ← **Head:** `txtlimit_config_option` --- ### 📝 Commits (2) - [`11fb6ba`](https://github.com/acme-dns/acme-dns/commit/11fb6bae22a5b220d8b345a0da97691aff67557d) Add Dockerfile.local for local build, add layer for go deps - [`dde1af5`](https://github.com/acme-dns/acme-dns/commit/dde1af5ce7c3a8542b60aa14cfa1040b26b8e182) Add "txt_limit" config option ### 📊 Changes **5 files changed** (+56 additions, -8 deletions) <details> <summary>View changed files</summary> ➕ `Dockerfile.local` (+34 -0) 📝 `config.cfg` (+4 -1) 📝 `pkg/acmedns/config.go` (+5 -0) 📝 `pkg/acmedns/types.go` (+1 -0) 📝 `pkg/database/db.go` (+12 -7) </details> ### 📄 Description Adds txt_limit config option which allows to specify number of TXT records per subdomains. acme-dns has hardcoded limit for only two TXT records and this is enough for almost all LE certs. But in some cases two TXT per account is not enough. For example: 1. Cert with multiple domains - acme.sh + acme-dns is used - need to issue cert with named "domain1.com, *.domain1.com, domain2.com" - acme.sh has no ability to specify DNS management account1 for domain1 and account2 for domain2 and user has to use single acme-dns account for all domains in single cert 2. some one can use single acme-dns account for all his domain and can get issues for limit in two TXT records Option 'txt_limit' allows to increase number of TXT record for these specific cases and the default number is two. Also "Dockerfile.local" is provided for build from local sources. Build is splitted in two parts (multiple docker layers): layers for do deps and layers for bo build. This allows to re-use go deps installed previously and cached in docker cache --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/acme-dns#406
No description provided.