@greenlock/manager

3.1.0 • Public • Published

Greenlock Manager

Manages SSL Certificate issue and renewal for Greenlock.

Saves global and per-site config to a local File Sytem (current), with optional encrypted Cloud backup (coming soon).

Install

npm install --save greenlock@4
npm install --save greenlock-manager@3

Usage

To enable encrypted cloud backup, when it becomes available:

npx greenlock init --manager cloud --config-dir './greenlock.d'

For local file system only:

npx greenlock init --manager fs --config-dir './greenlock.d'

Or, place this file in the root of your project:

.greenlockrc:

{
    "manager": { "module": "@greenlock/manager" },
    "configDir": "./greenlock.d"
}

Greenlock Manager CLI & API

All manager plugins have the same API.

The manager-specific implementation is overlaid by Greenlock with error handling and common utilities, and then exposed as documented here.

Note: Most people do not need to (and should not) not use the JavaScript API. Instead, use the CLI (current) or Web API (coming soon).

Initialize the Manager

npx greenlock init --manager cloud --config-dir './greenlock.d'

Note: You should not initialize greenlock directly as this may make it incompatible with the CLI and Web GUI.

Instead use the file generated by the CLI init (shown above).

Greenlock.create({
    manager: "@greenlock/manager",
    cloud: true,
    configDir: "./greenlock.d",
    packageRoot: __dirname
});

Set Subscriber and other global Defaults

npx greenlock defaults --subscriber-email jon@example.com --agree-to-terms true
greenlock.manager.defaults({
    subscriberEmail: "jon@example.com",
    agreeToTerms: true
});

Site Management

By "site" we mean a primary domain and, optionally, secondary domains, to be listed on an ssl certificate, along with any configuration that is necessary for getting and renewing those certificates.

Add a sites - domains and SSL certificates

npx greenlock add --subject example.com --altnames 'example.com,www.example.com'
greenlock.sites.add({
    subject: "example.com",
    altnames: ["example.com", "www.example.com"]
});

View site config

npx greenlock config --subject example.com
greenlock.sites.get({
    servername: "www.example.com",
    wildname: "*.example.com"
});

Update site config

npx greenlock update --subject example.com --challenge-dns-01 acme-dns-01-ovh --challenge-dns-01-token xxxx
greenlock.sites.update({
    subject: "www.example.com",
    challenges: {
        "dns-01": {
            module: "acme-dns-01-ovh",
            token: "xxxx"
        }
    }
});

Remove a site

To stop automatic renewal of SSL certificates for a particular site. You to restart renewal you must use add().

npx greenlock remove --subject example.com
greenlock.sites.remove({
    subject: "example.com"
});

Package Sidebar

Install

npm i @greenlock/manager

Weekly Downloads

9,666

Version

3.1.0

License

MPL-2.0

Unpacked Size

21.1 kB

Total Files

4

Last publish

Collaborators

  • sam-lord
  • coolaj86