Skip to main content
Deploy your Blnk server with HTTPS so traffic between clients and Core is encrypted. Blnk issues a Let’s Encrypt certificate when you set server.ssl to true and point a domain at the server. This guide helps you set up HTTPS for a Core instance you operate yourself. You need a basic understanding of Docker, Compose, and domain management.
Prerequisites:
  • Docker 20.10.11 or later
  • Compose 1.29.2 or later
  • A valid domain name pointed to your server
  • Blnk Core 0.15.4 or later

Before you start

Make sure that the Blnk server has been successfully deployed and is running on your machine.

Deploy Blnk

Local install or Blnk Cloud.
1

Update your configuration file

Set server.ssl to true and provide the domain, notification email, and certificate storage path.
When ssl is true, Blnk starts an HTTPS listener on server.port, obtains a certificate for server.domain, and stores it in cert_storage_path. If a certificate cannot be issued, the server fails to start. It does not fall back to HTTP.See HTTPS settings for every field and default.
2

Ensure your domain points to your server

Confirm that the DNS settings for your domain point to the IP address of your server.This is required for Let’s Encrypt to verify the domain and issue a certificate. If domain is empty, Blnk defaults to localhost, which cannot receive a public certificate.
3

Start your Blnk server

With your configuration file updated, start your Blnk server using Docker Compose.
The process validates domain ownership, issues a certificate, and starts the HTTPS listener. Startup logs include the scheme (https) so you can confirm TLS is on.
4

Verifying your HTTPs set-up

Once your Blnk server is running, verify the HTTPS setup with curl:
You should see a successful HTTPS response. An HTTP client against the same port will fail the TLS handshake.
Do not leave "ssl": true in config while your clients still use http://. After 0.15.4 those clients will fail. Set ssl to false if you intend to keep HTTP.

Next steps

With HTTPS enabled, traffic to your Blnk server is encrypted. Consider the following as you continue:
  1. Monitor and renew certificates: Blnk automates issuance. Monitor your domain and certificates for expiry and keep cert_storage_path writable so renewals can be stored.
  2. Security best practices: Keep software up to date, manage access controls, and monitor for unauthorized access. Enable secure mode for API authentication.

Need help?

We are very happy to help you make the most of Blnk, regardless of whether it is your first time or you are switching from another tool. To ask questions or discuss issues, please contact us or join our Discord community.