🚨 The Problem

After spending a good afternoon working on my web form integration, I discovered through F12 developer tools that my web form couldn't connect to my n8n automation server. The error revealed that external web requests cannot reach Docker containers through HTTP when using private IP addresses.

✅ The Solution

Successfully configured a complete networking solution using AWS Route 53 DNS records, Nginx Proxy Manager, and proper Docker networking to make n8n.jasoncv.click accessible from the public internet with SSL encryption.

🎯 Key Learning

External web services cannot reach Docker containers through private IPs - you need a reverse proxy and proper DNS configuration pointing to your public IP address.

🔧 Technical Implementation

Step 1: DNS Configuration

Set up AWS Route 53 A record pointing n8n.jasoncv.click to public IP address (35.177.205.66)

n8n.jasoncv.click → 35.177.205.66 (Public IP Only) ❌ Never use private IPs like 10.x.x.x in DNS records

Step 2: Nginx Proxy Manager Setup

Configured reverse proxy to handle public requests and route them to Docker containers

Public Internet → Port 80/443 → Nginx Proxy Manager → Docker Container (Port 5678)

Step 3: Docker Network Configuration

Containers communicate internally using Docker network or private IPs

Nginx Proxy → Internal Docker Network → n8n Container

Step 4: SSL Certificate

Implemented Let's Encrypt SSL through Nginx Proxy Manager

Let's Encrypt validates domain → Issues SSL cert → HTTPS enabled

🌐 Network Flow Diagram

Internet Request (https://n8n.jasoncv.click)
        ↓
AWS Route 53 DNS Resolution
        ↓
Public IP: 35.177.205.66
        ↓
EC2 Security Groups (Ports 80, 443)
        ↓
Nginx Proxy Manager (Docker Container)
        ↓
Internal Docker Network
        ↓
n8n Container (Port 5678)
        ↓
Form Processing & Email Automation
                

💡 Technical Details

  • AWS EC2: Host server running Docker containers
  • Route 53: DNS management for domain resolution
  • Nginx Proxy Manager: Reverse proxy with SSL termination
  • Docker: Container orchestration for n8n and proxy
  • Let's Encrypt: Free SSL certificate automation
  • n8n: Workflow automation for form processing

🔍 Troubleshooting Checklist

  • ✅ DNS points to public IP only (never private)
  • ✅ Proxy forwards to correct internal IP/port
  • ✅ Security groups allow inbound 80, 443, and service ports
  • ✅ Docker containers are running and accessible
  • ✅ SSL certificate issued after DNS propagation
  • ✅ Firewall rules configured properly

🏆 Final Result

Successfully deployed a secure, scalable contact form automation system that processes form submissions through n8n workflows and delivers them directly to email - all accessible via HTTPS with proper SSL encryption.

🛠️ Skills Demonstrated

  • AWS EC2 and Route 53 management
  • Docker container networking
  • Reverse proxy configuration
  • SSL certificate management
  • DNS troubleshooting
  • Security group configuration
  • Network diagnostics and debugging