Deployment Guide

Summary Overview

Step-by-step instructions for deploying the entire stack from scratch using Docker and Git.

Updated: 2025-01-20
devopsdockerci/cd

Prerequisites

Before you begin, ensure you have the following installed on your target machine (Ubuntu Server 22.04 LTS recommended):

  • Docker Engine (v24.0+)
  • Docker Compose (v2.20+)
  • Git

Cloning the Repository

Start by cloning the main repository. This contains all the configuration files and docker-compose definitions needed.

git clone https://github.com/ivanncabardo/homelab-funnel.git
cd homelab-funnel

Configuration

  1. Environment Variables: Copy the example environment file.
    cp .env.example .env
    
  2. Secrets: Edit the .env file to add your specific secrets (API keys, passwords).
    • CLOUDFLARE_TOKEN: Your tunnel token.
    • DOMAIN: Your primary domain name.
    • ACME_EMAIL: Email for Let's Encrypt certificates.

Launching the Stack

We use a unified makefile to handle the startup process, but you can also use docker-compose directly.

docker compose up -d

Verification

Check the logs to ensure everything started correctly:

docker compose logs -f traefik

You should see Traefik successfully obtaining certificates and listening for traffic.