whatisgithub

What is cf-docker-tunnel-sync?

hapheus/cf-docker-tunnel-sync — explained in plain English

Analysis updated 2026-07-26

2PythonAudience · ops devopsComplexity · 3/5Setup · moderate

In one sentence

Automatically exposes Docker containers to the internet using Cloudflare tunnels by adding simple text labels, skipping manual router and DNS configuration.

Mindmap

mindmap
  root((repo))
    What it does
      Auto exposes containers
      Manages DNS records
      Cleans up on stop
    Setup
      Needs Cloudflare domain
      Requires API token
      Run with connector
    Use cases
      Home server access
      Raspberry Pi projects
      Expose host services
    Dashboard
      Web status page
      Live logs
      Password protected

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Expose a home server Docker container to the internet without changing router settings.

USE CASE 2

Make a Raspberry Pi web project accessible via a custom domain name.

USE CASE 3

Connect a non-Docker program on your computer to the web using a bridge container.

USE CASE 4

Automatically clean up DNS records when you stop a container.

What is it built with?

PythonDockerCloudflare

How does it compare?

hapheus/cf-docker-tunnel-sync0-bingwu-0/live-interpreter010zx00x1/faresnipe
Stars222
LanguagePythonPythonPython
Setup difficultymoderatemoderateeasy
Complexity3/52/52/5
Audienceops devopsgeneralgeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires a Cloudflare-managed domain and an API token with specific permissions for tunnels and DNS.

The explanation does not mention a license for this repository.

So what is it?

This project helps you put Docker containers on the internet using Cloudflare, a service that sits between your containers and the wider web. Normally, exposing a container running on your own machine, like a home server or a Raspberry Pi, means dealing with router settings, DNS records, and manual tunnel setup. This tool handles that for you. You add simple text labels to your containers specifying a domain name and a port, and the tool takes care of creating the connection and updating DNS automatically. To get started, you need a domain name managed by Cloudflare. You create a single API token in your Cloudflare account with specific permissions for tunnels and DNS. Then you run the project alongside Cloudflare's own connector software using a configuration file. The tool scans your running containers every 30 seconds by default, looking for the labels that tell it what to expose. When it finds them, it configures the tunnel and creates the DNS records needed to make the container reachable at the domain you chose. The tool also handles cleanup. When you stop a container, it removes the DNS entries that are no longer needed. A simple web dashboard on port 8090 shows you the current routing status and live logs. The dashboard is password protected, though the README notes the default credentials are "admin" and "admin", so you should change those. The README also recommends against exposing the dashboard to the public internet. You can expose services that are not running in Docker by using a small bridge container. This is a lightweight container that holds the labels and points the tunnel to a service running directly on your host machine, like a program running on your Mac or Pi. The project works on both standard Linux computers and Raspberry Pi devices.

Copy-paste prompts

Prompt 1
How do I add labels to my Docker container so cf-docker-tunnel-sync exposes it on my domain?
Prompt 2
What permissions does the Cloudflare API token need for cf-docker-tunnel-sync to work?
Prompt 3
How do I expose a program running directly on my Mac to the internet using the bridge container?
Prompt 4
How do I change the default admin password for the cf-docker-tunnel-sync dashboard?

Frequently asked questions

What is cf-docker-tunnel-sync?

Automatically exposes Docker containers to the internet using Cloudflare tunnels by adding simple text labels, skipping manual router and DNS configuration.

What language is cf-docker-tunnel-sync written in?

Mainly Python. The stack also includes Python, Docker, Cloudflare.

What license does cf-docker-tunnel-sync use?

The explanation does not mention a license for this repository.

How hard is cf-docker-tunnel-sync to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is cf-docker-tunnel-sync for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.