## DockFlare v1.7 Release Notes - Unified Ingress & Manual Rules! #49
Replies: 1 comment
-
Hey everyone, thanks for the interest in DockFlare v1.7! With the new ability to add manual rules for services like router UIs, Proxmox, NAS interfaces, etc., some folks might naturally have security concerns about "exposing" these internal services. I wanted to share a bit more about how DockFlare, when used with Cloudflare Tunnels and Access policies, aims to provide a secure way to access these resources, often offering advantages over traditional methods like VPNs. The core principle here is Cloudflare's Zero Trust security model. Here’s a breakdown:
DockFlare's Role: So, while it might seem like "exposing" services, it's about doing so through a modern, secure, and explicitly controlled Zero Trust gateway. This approach is becoming increasingly popular as a more flexible and often more secure alternative to traditional VPNs for accessing self-hosted applications. Happy to discuss this further if anyone has questions or wants to share their experiences with Zero Trust setups! |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
DockFlare v1.7 Release Notes - Unified Ingress & Manual Rules!
I'm excited to announce the release of DockFlare v1.7, a significant update focused on expanding management capabilities and refining the user experience! This version introduces the highly requested Manual Ingress Rule Management, allowing you to bring non-Dockerized internal services under the umbrella of your Cloudflare Tunnel with the same ease as your containerized applications.
✨ New Features
http://192.168.0.1:80
,https://internal-server:8443
), an optional Cloudflare Zone Name (if different from the globalCF_ZONE_ID
), and TLS verification settings.https://my-service/app/
) will be automatically stripped (tohttps://my-service
) for the Cloudflare Tunnel configuration, as Cloudflare expects only the scheme, host, and port. The original path from the user's request will still be passed to your origin service.🎨 UI/UX Enhancements
🐛 Bug Fixes & Internal Improvements
update_cloudflare_config
logic is now more assertive, ensuring that rules removed from DockFlare's management are also properly removed from the Cloudflare Tunnel.source
field for rules (docker
ormanual
) is now more consistently managed throughout the application lifecycle (loading, processing, saving state), ensuring accurate differentiation and behavior in reconciliation and cleanup.🔧 For Developers & Advanced Users
update_cloudflare_config
function now takes a more authoritative stance: for the DockFlare-managed tunnel, any non-wildcard, non-catch-all ingress rule found on Cloudflare that is not present in DockFlare'smanaged_rules
(either from Docker labels or manual UI entries) will be removed by DockFlare. This ensures the tunnel configuration accurately reflects DockFlare's intended state. True external wildcards and the API's catch-all rule are still preserved.You're absolutely right to structure it that way – Cloudflare cleanup first makes more logical sense before local cleanup.
Here's the revised "Upgrading to v1.7" section with that flow:
⬆️ Upgrading to v1.7
Due to significant improvements in state management and the introduction of the
source
field for rules, a completely clean state (both on Cloudflare and locally) is strongly recommended for the smoothest upgrade. This ensures all new logic operates from a pristine baseline and avoids potential conflicts. This is especially true if you are coming from a version prior to v1.7 or have experienced any inconsistencies.Recommended Upgrade Path for a True Fresh Start:
Clean Up Existing Cloudflare Configuration:
TUNNEL_NAME
environment variable, e.g., "dockflared-tunnel" or your custom name)..cfargotunnel.com
address. DockFlare v1.7 will recreate these as needed.Stop and Remove your Local DockFlare Instance:
(If using Docker Compose, navigate to the directory containing your
docker-compose.yml
file)(For older
docker-compose
v1, usedocker-compose down
)(If using
docker run
, usedocker stop your_dockflare_container_name && docker rm your_dockflare_container_name
)Important: Back up Local State (Optional - for reference only):
If you wish to keep a reference of your old
state.json
(e.g., to remember manual rules you'll need to re-add), you can back it up now. This old state file will not be reused for the clean upgrade.dockflare_data
): Note the content of/app/data/state.json
within the volume if needed../dockflare-data/state.json
on your host if needed.Pull the Latest DockFlare Image:
(You can also optionally remove the old image first with
docker rmi alplat/dockflare:stable
to ensure a completely fresh image pull.)Purge the Local Docker Volume / Clear Bind Mount (CRITICAL for Clean Start):
This step removes your old
state.json
, ensuring DockFlare v1.7 starts without any previous local state.dockflare_data
as per exampledocker-compose.yml
):docker-compose.yml
is part of a project, Docker Compose might have prefixed the volume name (e.g.,myproject_dockflare_data
). Usedocker volume ls
to verify the exact name if the command above fails, and then use that exact name in therm
command../dockflare-data:/app/data
), delete thestate.json
file from your host directory (e.g.,rm ./dockflare-data/state.json
) or delete the entire host directory if it solely contains DockFlare data.Start DockFlare with the New Image and Clean State:
(If using Docker Compose)
(Or re-run your
docker run ...
command if not using Compose, ensuring your volume/bind mount for/app/data
is correctly specified – it will be created fresh if it was a named volume that you removed).TUNNEL_NAME
).Why a completely clean state (Cloudflare & local) is recommended for v1.7:
The introduction of the
source
field ("docker" vs. "manual") and the refinedupdate_cloudflare_config
logic represent fundamental changes. Starting fresh ensures the integrity of the new rule management system, avoids potential conflicts from older state files or lingering Cloudflare configurations, and allows the application to establish itself as the authority for its managed tunnel from a known, clean baseline.This discussion was created from the release ## DockFlare v1.7 Release Notes - Unified Ingress & Manual Rules!.
Beta Was this translation helpful? Give feedback.
All reactions