Skip to main content

Overview

fjall domain manages custom domains for your applications. It scaffolds domains, deploys their AWS Route 53 hosted zones, verifies nameserver delegation, and imports or exports DNS records as BIND zone files.

Usage

fjall domain <subcommand> [domain] [options]

Subcommands

SubcommandArgumentDescription
create<domain>Scaffold a new domain in the project
deploy<domain>Deploy the domain’s Route 53 hosted zone
verify<domain>Verify nameserver delegation to Route 53
export<domain>Export DNS records to a BIND zone file
import[domain]Import a domain from Route 53 or a BIND file
listnoneList all configured domains
eject<domain>Eject a domain from Fjall management

Create a domain

Scaffold a new domain in the current project:
fjall domain create example.com
Reuse an existing Route 53 hosted zone instead of creating a new one:
fjall domain create example.com --hosted-zone-id Z1234567890ABC
OptionDescription
--hosted-zone-id <id>Existing Route 53 hosted zone ID

Deploy a domain

Deploy the domain’s hosted zone and DNS infrastructure to AWS:
fjall domain deploy example.com
This subcommand takes no options beyond the domain argument.

Verify delegation

Check whether the domain’s nameservers point to Route 53:
fjall domain verify example.com
Print registrar delegation instructions (requires a successful deploy first):
fjall domain verify example.com --show-delegation
OptionDescription
--show-delegationEmit registrar delegation instructions

Export DNS records

Export the domain’s DNS records to a BIND zone file:
fjall domain export example.com --output ./example.com.zone
OptionDescription
--output <path>Output path for the BIND zone file
--hosted-zone-id <id>Explicit Route 53 hosted zone ID
--forceOverwrite an existing output file

Import a domain

Import from an existing Route 53 hosted zone (the default when a domain is given):
fjall domain import example.com --from-route53
Import from a BIND zone file:
fjall domain import example.com --from-bind ./example.com.zone
OptionDescription
--hosted-zone-id <id>Route 53 hosted zone ID
--from-bind <path>Import from a BIND zone file
--from-route53Import from Route 53 (default when a domain is given)
--interactiveCollect records via interactive prompts
--preserve-bindRetain zone.bind in the scaffold output

List domains

Show all domains configured in the current project:
fjall domain list

Eject a domain

Remove a domain from Fjall management while keeping its AWS resources in place:
fjall domain eject example.com

Next Steps

Deploy

Deploy your application to AWS.

Create

Scaffold applications, organisations, and accounts.

List resources

List the resources inside an application’s infrastructure.

Connect AWS

Connect an AWS account to deploy into.