Skip to main content

HTTPS using Caddy

⚡ Caddy Web Server

HTTPS Using Caddy

Ensuring secure communication between your users and the HridaAI is paramount. HTTPS (HyperText Transfer Protocol Secure) encrypts the data transmitted, protecting it from eavesdroppers and tampering. By configuring Caddy as a reverse proxy, you can seamlessly add HTTPS to your HridaAI deployment, enhancing both security and trustworthiness.

🔒 Auto TLS⚡ Zero-config HTTPS🐳 Docker🐧 Ubuntu🔄 Easy updates

This guide is simple walkthrough to set up a Ubuntu server with Caddy as a reverse proxy for HridaAI, enabling HTTPS with automatic certificate management.

There's a few steps we'll follow to get everything set up:


Docker

Follow the guide to set up Docker's apt repository Docker

I've included docker-compose as it's needed to run docker compose.

1Installing Docker

Here's the command I've used to install Docker on Ubuntu:

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-compose

HridaAI

I'd go ahead and create a directory for the HridaAI project:

mkdir -p ~/hrida-ai
cd ~/hrida-ai
2Installing HridaAI

Create a docker-compose.yml file in the ~/hrida-ai directory. I've left in a commented section for setting some environment varibles for Qdrant, but you can follow that for any other environment variables you might need to set.

services:
    hrida-ai:
        image: ghcr.io/hrida-ai/hrida-ai-studio:main
        container_name: hrida-ai
        ports:
            - "8080:8080"
        volumes:
            - ./data:/app/backend/data
        # environment:
        #     - "QDRANT_API_KEY=API_KEY_HERE"
        #     - "QDRANT_URI=https://example.com"
        restart: unless-stopped

Caddy

Caddy is a powerful web server that automatically manages TLS certificates for you, making it an excellent choice for serving HridaAI over HTTPS.

3Installing Caddy

Follow the guide to set up Caddy's on Ubuntu.

4Configure Caddy

You're going to need to change the CaddyFile to use your domain.

To do that, edit the file /etc/caddy/Caddyfile.

sudo nano /etc/caddy/Caddyfile

Then the configuration should have the following:

📄 /etc/caddy/Caddyfile
your-domain.com {
reverse_proxy localhost:8080
}

Make sure to replace your-domain.com with your actual domain name.


Testing HTTPS

Now assuming you've already set up your DNS records to point to your server's IP address, you should be able to test if HridaAI is accessible via HTTPS by running docker compose up in the ~/hrida-ai directory.

cd ~/hrida-ai
docker compose up -d
You should now be able to access HridaAI at https://your-domain.com.Caddy handles TLS certificate provisioning and renewal automatically.

HridaAI Upgrade & Migration

I wanted to include a quick note on how to update HridaAI without losing your data. Since we're using a volume to store the data, you can simply pull the latest image and restart the container.

Step 1 — Stop

Stopping HridaAI

First we need to stop and remove the existing container:

docker rm -f hrida-ai
Step 2 — Pull

Pulling the latest image

Then you can start the container again:

docker pull ghcr.io/hrida-ai/hrida-ai-studio:main
Step 3 — Start

Starting HridaAI

Now you can start the HridaAI container again:

docker compose up -d
This content is for informational purposes only and does not constitute a warranty, guarantee, or contractual commitment. Hrida AI is proprietary software owned by Zlabs Innovation, provided "as is." See your license for applicable terms. © 2026 Zlabs Innovation. All rights reserved.