Hello Happy Developers! We are happy to announce that Kontena 1.4.0 is now available.

Kontena Platform Highlights

See the Kontena 1.4 Release Notes for the full list of changes, including minor CLI updates.

Fully automated Let's Encrypt certificates using tls-sni-01

The new Kontena Certificate support integrates with the Kontena Loadbalancer to provide fully automated Let's Encrypt tls-sni-01 domain authorizations.

The kontena certificate authorize command can be used to request a tls-sni-01 domain authorization challenge from Let's Encrypt, and also to deploy the challenge certificate to the linked Kontena load-balancer. The new kontena certificate request command can then be immediately used to request a new certificate for the authorized domains. The new certificates will show up in kontena certificate list together with their validity period, and the Kontena Master will automatically renew the certificates 7 days before expiring.

These new certificates can be deployed to the load-balancer service using the new Kontena Stack YAML certificates syntax.

stack: example/lb
    image: kontena/lb
      - subject: example.com
        type: env
        name: SSL_CERTS

Any existing LE_CERTIFICATE_* secrets will also be migrated to Kontena Certificates during the upgrade.

Stack Dependencies

Kontena Stacks can now embed other Kontena Stacks, and these child stacks will be automatically installed, upgraded and removed as part of the top-level stack. The child stack variables can either be set by the parent stack, or using the new kontena stack install -v child.variable=value CLI options.

stack: example/app
    stack: example/db
    image: example/app
      - DB=$db.$GRID.kontena.local

Service pre_start and pre_stop hooks

Kontena Services now also support type: pre_start|pre_stop hooks, in addition to the existing type: post_start hooks. The pre_start hooks are run in a temporary container before the service container is started, and must execute successfully for the deployment to proceed.

Soft affinities

Services can now also be scheduled with soft ==~ affinities like service!=~other. Normal "hard" affinities will fail the service deploy if the scheduler cannot satisfy the condition. The scheduler will attempt to satisfy soft affinities, but will ignore them if unable to.

Node availability

Nodes can be placed into the drain state, where no new service instances will be scheduled onto the node, any stateless service instances will be re-scheduled onto other nodes, and stateful service instances will be stopped.

Kontena Cloud Updates

The new CLI cloud plugin can be used to manage Kontena Cloud Organizations and Platforms. The kontena cloud platform|organization|region commands are available using kontena plugin install cloud. The plugin is also included in the CLI installer packages.

About Kontena

Want to learn about real life use cases of Kontena, case studies, best practices, tips & tricks? Need some help with your project? Want to contribute to a project or help other people? Join Kontena Forum to discuss more about Kontena Platform, chat with other happy developers on our Slack discussion channel or meet people in person at one of our Meetup groups located all around the world. Check our website for more details.