github.com/StackExchange/dnscontrol/v4@v4.11.0/docs/index.md (about)

     1  ---
     2  layout: default
     3  title: DNSControl
     4  ---
     5  
     6  <div class="row jumbotron">
     7      <div class="col-md-12">
     8          <div>
     9              <h1 class="hometitle">DNSControl</h1>
    10              <p class="lead">DNSControl is an <strong><a href="https://docs.dnscontrol.org/developer-info/opinions">opinionated</a></strong> platform for seamlessly managing your DNS configuration across any number of DNS hosts, both in the cloud or in your own infrastructure. It manages all of the domains for the Stack Overflow network, and can do the same for you!</p>
    11          </div>
    12      </div>
    13  </div>
    14  
    15  <div class="row text-center" style="padding-top: 75px;">
    16      <div class="col-md-4">
    17          <h3>Try It</h3>
    18          <p>Want to jump right in? Follow our
    19           <strong><a href="https://docs.dnscontrol.org/getting-started/getting-started">quick start tutorial</a></strong>
    20           on a new domain or
    21           <strong><a href="https://docs.dnscontrol.org/getting-started/migrating">migrate</a></strong>
    22           an existing one. Read the
    23           <strong><a href="https://docs.dnscontrol.org/language-reference/js">language spec</a></strong>
    24           for more info. You can also <strong><a href="#getting-started">view a list of all topics</a></strong>.
    25      </p>
    26      </div>
    27  
    28      <div class="col-md-4">
    29          <h3>Use It</h3>
    30          <p>Take advantage of the
    31           <strong><a href="#advanced-features">advanced features</a></strong>.
    32           Use macros and variables for easier updates.
    33           <!-- Optimize your SPF records. -->
    34           Upload your zones to
    35           <strong><a href="https://docs.dnscontrol.org/provider">multiple DNS providers</a></strong>.
    36      </p>
    37      </div>
    38  
    39      <div class="col-md-4">
    40          <h3>Get Involved</h3>
    41          <p>Join our
    42           <strong><a href="https://groups.google.com/forum/#!forum/dnscontrol-discuss">mailing list</a></strong>.
    43           We make it easy to contribute by using
    44           <strong><a href="https://github.com/StackExchange/dnscontrol">GitHub</a></strong>,
    45           you can make code changes with confidence thanks to extensive integration tests.
    46           The project is
    47           <strong><a href="https://everythingsysadmin.com/2017/08/go-get-up-to-speed.html">newbie-friendly</a></strong>
    48           so jump right in!
    49      </p>
    50      </div>
    51  </div>
    52  
    53  <div class="row" style="padding-top: 75px"><div class='col-md-4 col-md-offset-4'><h2 class="text-center feature-header">Features</h2></div></div>
    54  <hr class="feature">
    55  
    56  <div class="row">
    57      {% include feature.html text="Maintain your DNS data as a high-level DS, with macros, and variables for easier updates." img="biology.svg" %}
    58      {% include feature.html text="Super extensible! Plug-in architecture makes adding new DNS providers and Registrars easy!" img="light-bulb.svg" %}
    59      {% include feature.html text="Eliminate vendor lock-in. Switch DNS providers easily, any time, with full fidelity." img="group.svg" %}
    60      {% include feature.html text="Reduce points of failure: Easily maintain dual DNS providers and easily drop one that is down." img="layers.svg" %}
    61      {% include feature.html text="Supports 35+ DNS Providers including BIND, AWS Route 53, Google DNS, and name.com" img="cancel.svg" %}
    62      {% include feature.html text="Apply CI/CD principles to DNS: Unit-tests, system-tests, automated deployment." img="share.svg" %}
    63      {% include feature.html text="All the benefits of Git (or any VCS) for your DNS zone data. View history. Accept PRs." img="document.svg" %}
    64      {% include feature.html text="Optimize DNS with SPF optimizer. Detect too many lookups. Flatten includes." img="mail.svg" %}
    65      {% include feature.html text="Runs on Linux, Windows, Mac, or any operating system supported by Go." img="speech-bubble.svg" %}
    66      {% include feature.html text="Enable/disable Cloudflare proxying (the \"orange cloud\" button) directly from your DNSControl files." img="cloud-computing.svg" %}
    67      {% include feature.html text="Assign an IP address to a constant and use the variable name throughout the configuration. Need to change the IP address globally? Just change the variable and \"recompile.\"" img="compass.svg" %}
    68      {% include feature.html text="Keep similar domains in sync with transforms, macros, and variables." img="attachment.svg" %}
    69  </div>
    70  
    71  <hr class="feature">
    72  
    73  <div class="container-fluid">
    74      <div class="row">
    75          <div class="col-md-4">
    76              <h2 id="getting-started">
    77                  Getting Started
    78              </h2>
    79              <p>
    80                  Information for new users and the curious.
    81              </p>
    82  
    83              <ul>
    84                  <li>
    85                        <a href="https://docs.dnscontrol.org/getting-started/getting-started">Getting Started</a>: A walk-through of the basics
    86                  </li>
    87                  <li>
    88                      <a href="https://docs.dnscontrol.org/provider">Providers</a>: Which DNS providers are supported
    89                  </li>
    90                  <li>
    91                      <a href="https://docs.dnscontrol.org/getting-started/examples">Examples</a>: The DNSControl language by example
    92                  </li>
    93                  <li>
    94                      <a href="https://docs.dnscontrol.org/getting-started/migrating">Migrating</a>: Migrating zones to DNSControl
    95                  </li>
    96                  <li>
    97                      <a href="https://docs.dnscontrol.org/getting-started/typescript">TypeScript</a> (optional): Improve autocomplete and add type checking
    98                  </li>
    99              </ul>
   100  
   101              <h2 id="commands">
   102                  Commands
   103              </h2>
   104              <p>
   105                  DNSControl sub-commands and options.
   106              </p>
   107  
   108              <ul>
   109                  <li>
   110                       <a href="https://docs.dnscontrol.org/commands/creds-json">creds.json</a>: creds.json file format
   111                  </li>
   112                  <li>
   113                       <a href="https://docs.dnscontrol.org/commands/check-creds">check-creds</a>: Verify credentials
   114                  </li>
   115                  <li>
   116                       <a href="https://docs.dnscontrol.org/commands/get-zones">get-zones</a>: Query a provider for zone info
   117                  </li>
   118                  <li>
   119                      <a href="https://docs.dnscontrol.org/commands/get-certs">get-certs</a>: Renew SSL/TLS certs (DEPRECATED)
   120                  </li>
   121              </ul>
   122  
   123          </div>
   124          <div class="col-md-4">
   125              <h2 id="reference">
   126                  Reference
   127              </h2>
   128              <p>
   129                  Language resources and procedures.
   130              </p>
   131  
   132              <ul>
   133                  <li>
   134                      <a href="https://docs.dnscontrol.org/language-reference/js">Language Reference</a>: Description of the DNSControl language (DSL)
   135                  </li>
   136                  <li>
   137                      <a href="https://docs.dnscontrol.org/developer-info/alias">Aliases</a>: ALIAS/ANAME records
   138                  </li>
   139                  <li>
   140                      <a href="https://docs.dnscontrol.org/language-reference/record-modifiers/spf_builder">SPF Optimizer</a>: Optimize your SPF records
   141                  </li>
   142                  <li>
   143                      <a href="https://docs.dnscontrol.org/language-reference/record-modifiers/caa_builder">CAA Builder</a>: Build CAA records the easy way
   144                  </li>
   145              </ul>
   146          </div>
   147          <div class="col-md-4">
   148              <h2 id="advanced-features">
   149                  Advanced features
   150              </h2>
   151              <p>
   152                  Take advantage of DNSControl's unique features.
   153              </p>
   154              <ul>
   155                  <li>
   156                      <a href="https://docs.dnscontrol.org/language-reference/why-the-dot">Why CNAME/MX/NS targets require a trailing "dot"</a>
   157                  </li>
   158                  <li>
   159                      <a href="https://docs.dnscontrol.org/developer-info/unittests">Testing</a>: Unit Testing for you DNS Data
   160                  </li>
   161                  <li>
   162                      <a href="https://docs.dnscontrol.org/advanced-features/notifications">Notifications</a>: Web-hook for changes
   163                  </li>
   164                  <li>
   165                      <a href="https://docs.dnscontrol.org/advanced-features/code-tricks">Code Tricks</a>: Safely use macros and loops.
   166                  </li>
   167                  <li>
   168                      <a href="https://docs.dnscontrol.org/advanced-features/cli-variables">CLI variables</a>: Passing variables from CLI to JS
   169                  </li>
   170                  <li>
   171                      <a href="https://docs.dnscontrol.org/advanced-features/nameservers">Nameservers &amp; Delegation</a>: Many examples.
   172                  </li>
   173                  <li>
   174                      <a href="https://docs.dnscontrol.org/advanced-features/ci-cd-gitlab">Gitlab CI/CD example</a>.
   175                  </li>
   176              </ul>
   177          </div>
   178      </div>
   179      <div class="row">
   180          <div class="col-md-12">
   181              <h2 id="developer-info">
   182                  Developer Info
   183              </h2>
   184              <p>
   185                  It is easy to add features and new providers to DNSControl. The code is very modular and easy to modify. There are extensive integration tests that make it easy to boldly make changes with confidence that you'll know if anything is broken. Our mailing list is friendly. Afraid to make your first PR? We'll gladly mentor you through the process. Many major code contributions have come from <a href="https://everythingsysadmin.com/2017/08/go-get-up-to-speed.html">first-time Go users</a>!
   186              </p>
   187              <ul>
   188                  <li>
   189                      GitHub <a href="https://github.com/StackExchange/dnscontrol">StackExchange/dnscontrol</a>: Get the source!
   190                  </li>
   191                  <li>
   192                      Mailing list: <a href="https://groups.google.com/forum/#!forum/dnscontrol-discuss">dnscontrol-discuss</a>: The friendly best place to ask questions and propose new features
   193                  </li>
   194                  <li>
   195                      <a href="https://docs.dnscontrol.org/developer-info/bug-triage">Bug Triage</a>: How bugs are triaged
   196                  </li>
   197                  <li>
   198                      <a href="https://docs.dnscontrol.org/release/release-engineering">Release Engineering</a>: How to build and ship a release
   199                  </li>
   200                  <li>
   201                      <a href="https://docs.dnscontrol.org/developer-info/byo-secrets">Bring-Your-Own-Secrets</a>: Automate tests
   202                  </li>
   203                  <li>
   204                      <a href="https://docs.dnscontrol.org/developer-info/writing-providers">Step-by-Step Guide: Writing Providers</a>: How to write a DNS or Registrar Provider
   205                  </li>
   206                  <li>
   207                      <a href="https://docs.dnscontrol.org/developer-info/adding-new-rtypes">Step-by-Step Guide: Adding new DNS rtypes</a>: How to add a new DNS record type
   208                  </li>
   209                  <li>
   210                      <a href="https://docs.dnscontrol.org/developer-info/ordering">DNS reordering</a>: How DNSControl determines the order of the changes
   211                  </li>
   212              </ul>
   213          </div>
   214      </div>
   215  </div>
   216  
   217  <hr class="feature">
   218  
   219  <p><small>Icons made by Freepik from <a href="https://www.flaticon.com">www.flaticon.com</a></small></p>