---
title: Charmhub | Deploy LEGO using Charmhub - The Open Operator Collection
description: 'Deploy the latest version of LEGO on any cloud. LEGO operator implementing
  the provider side of the `tls-certificates`

  interface to get signed certificates from the `Let''s Encrypt` ACME server

  using the DNS-01 challenge.'
url: https://charmhub.io/lego
---

# LEGO

[Canonical Telco](https://charmhub.io/publisher/telco-charmers "View all packages from Canonical Telco")

* [Canonical Telco](https://charmhub.io/publisher/telco-charmers "View all packages from Canonical Telco")

Platform:

24.04

22.04

4/stable 510

```
juju deploy lego --channel 4/stable
```

[Learn to deploy on juju >](https://juju.is/docs/juju/manage-applications)

---

#### Relevant links

* [Homepage](https://charmhub.io/lego)

---

#### Contacts

* [Submit a bug](https://github.com/canonical/lego-operator/issues)

---

Share your thoughts on this charm with the community on discourse.

[Join the discussion](https://discourse.charmhub.io/)

[LEGO](https://github.com/go-acme/lego) is a Let’s Encrypt/ACME client and library written in Go. It makes it possible to request X509 certificates from an ACME server for Public Domain Names.

The provider implements the tls-certificates interface supporting automatic certificate renewal, structured error reporting with standardized codes, and guaranteed responses (every certificate request receives either a certificate or a detailed error).

The LEGO operator utilises this library to provide X.509 certificates to charms using the `tls-certificates` integration in contexts where certificates are obtained from an ACME server using the DNS-01 challenge.

This operator supports a wide range of DNS [providers](https://go-acme.github.io/lego/dns/index.html) and can request certificate from any ACME-compliant server, including Let’s Encrypt.

As a workload-less solution, the LEGO operator works across both Kubernetes and Machine models.

## [In this documentation](https://charmhub.io/lego#p-33962-in-this-documentation)

|  |  |
| --- | --- |
| **Tutorials** Get started - a hands-on introduction for new users | **How-to guides** Step-by-step guides covering key operations and common tasks |
| **Explanation** Concepts - discussion and clarification of key topics | **Reference** Technical information - specifications, APIs, architecture |

## [Project and community](https://charmhub.io/lego#p-33962-project-and-community)

LEGO operator is a member of the Ubuntu family. It’s an open source project that warmly welcomes community projects, contributions, suggestions, fixes and constructive feedback.

* [Code of conduct](https://ubuntu.com/community/ethos/code-of-conduct)
* Meet the community and chat with us on [Matrix](https://matrix.to/#/!yAkGlrYcBFYzYRvOlQ:ubuntu.com?via=ubuntu.com&via=matrix.org&via=gnome.org)
* Contribute and report bugs to the [charm](https://github.com/canonical/lego-operator)

---

[Help improve this document in the forum](https://discourse.charmhub.io/t/lego-operator-docs-index/15658) ([guidelines](https://discourse.charmhub.io/t/how-to-write-docs-our-documentation-guidelines-for-contributors/1245)). Last updated 6 months ago.
