Skip to content

Commit 78f44c0

Browse files
committed
chore: add appjail director support & regen docs
1 parent 0db53e8 commit 78f44c0

3 files changed

Lines changed: 67 additions & 11 deletions

File tree

Containerfile.pkg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ARG PACKAGES="cloudflared"
1212

1313
# --- Metadata (Injected by Generator) ---
1414
LABEL org.opencontainers.image.title="Cloudflared" \
15-
org.opencontainers.image.description="Cloudflare Tunnel client for exposing services securely." \
15+
org.opencontainers.image.description="Tunneling daemon that proxies any local webserver through the Cloudflare network without DNS records or firewall changes." \
1616
org.opencontainers.image.source="https://github.com/daemonless/cloudflared" \
1717
org.opencontainers.image.url="https://developers.cloudflare.com/cloudflare-one/connections/connect-apps" \
1818
org.opencontainers.image.licenses="Apache-2.0" \

README.md

Lines changed: 63 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,29 @@ Source: dbuild templates
55

66
# Cloudflared
77

8-
Cloudflare Tunnel client for exposing services securely.
8+
[![Build Status](https://img.shields.io/github/actions/workflow/status/daemonless/cloudflared/build.yaml?style=flat-square&label=Build&color=green)](https://github.com/daemonless/cloudflared/actions)
9+
[![Last Commit](https://img.shields.io/github/last-commit/daemonless/cloudflared?style=flat-square&label=Last+Commit&color=blue)](https://github.com/daemonless/cloudflared/commits)
10+
11+
Tunneling daemon that proxies any local webserver through the Cloudflare network without DNS records or firewall changes.
912

1013
| | |
1114
|---|---|
1215
| **Port** | 2000 |
1316
| **Registry** | `ghcr.io/daemonless/cloudflared` |
14-
| **Docs** | [daemonless.io/images/cloudflared](https://daemonless.io/images/cloudflared/) |
1517
| **Source** | [https://github.com/cloudflare/cloudflared](https://github.com/cloudflare/cloudflared) |
1618
| **Website** | [https://developers.cloudflare.com/cloudflare-one/connections/connect-apps](https://developers.cloudflare.com/cloudflare-one/connections/connect-apps) |
1719

20+
## Version Tags
21+
22+
| Tag | Description | Best For |
23+
| :--- | :--- | :--- |
24+
| `latest` / `pkg` | **FreeBSD Quarterly**. Uses stable, tested packages. | Most users. Matches Linux Docker behavior. |
25+
| `pkg-latest` | **FreeBSD Latest**. Rolling package updates. | Newest FreeBSD packages. |
26+
27+
## Prerequisites
28+
29+
Before deploying, ensure your host environment is ready. See the [Quick Start Guide](https://daemonless.io/guides/quick-start) for host setup instructions.
30+
1831
## Deployment
1932

2033
### Podman Compose
@@ -32,6 +45,43 @@ services:
3245
restart: unless-stopped
3346
```
3447
48+
### AppJail Director
49+
50+
**.env**:
51+
52+
```
53+
DIRECTOR_PROJECT=cloudflared
54+
TUNNEL_TOKEN=YOUR_CLOUDFLARE_TOKEN_HERE
55+
TUNNEL_METRICS=0.0.0.0:2000
56+
```
57+
58+
**appjail-director.yml**:
59+
60+
```yaml
61+
options:
62+
- virtualnet: ':<random> default'
63+
- nat:
64+
services:
65+
cloudflared:
66+
name: cloudflared
67+
options:
68+
- container: 'boot args:--pull'
69+
oci:
70+
user: root
71+
environment:
72+
- TUNNEL_TOKEN: !ENV '${TUNNEL_TOKEN}'
73+
- TUNNEL_METRICS: !ENV '${TUNNEL_METRICS}'
74+
```
75+
76+
**Makejail**:
77+
78+
```
79+
ARG tag=latest
80+
81+
OPTION overwrite=force
82+
OPTION from=ghcr.io/daemonless/cloudflared:${tag}
83+
```
84+
3585
### Podman CLI
3686

3787
```bash
@@ -41,7 +91,6 @@ podman run -d --name cloudflared \
4191
-e TUNNEL_METRICS=0.0.0.0:2000 \
4292
ghcr.io/daemonless/cloudflared:latest
4393
```
44-
Access at: `http://localhost:2000`
4594

4695
### Ansible
4796

@@ -59,21 +108,27 @@ Access at: `http://localhost:2000`
59108
- "2000:2000"
60109
```
61110
62-
## Configuration
111+
Access at: `http://localhost:2000`
112+
113+
## Parameters
114+
63115
### Environment Variables
64116

65117
| Variable | Default | Description |
66118
|----------|---------|-------------|
67119
| `TUNNEL_TOKEN` | `YOUR_CLOUDFLARE_TOKEN_HERE` | Required: The Cloudflare Tunnel token. |
68120
| `TUNNEL_METRICS` | `0.0.0.0:2000` | Optional: Address to bind metrics server (default: 0.0.0.0:2000) |
121+
69122
### Ports
70123

71124
| Port | Protocol | Description |
72125
|------|----------|-------------|
73126
| `2000` | TCP | |
74127

75-
## Notes
128+
**Architectures:** amd64
129+
**User:** `root` (UID/GID via PUID/PGID, defaults to 1000:1000)
130+
**Base:** FreeBSD 15.0
131+
132+
---
76133

77-
- **Architectures:** amd64
78-
- **User:** `root` (UID/GID set via PUID/PGID)
79-
- **Base:** Built on `ghcr.io/daemonless/base` (FreeBSD)
134+
Need help? Join our [Discord](https://discord.gg/Kb9tkhecZT) community.

compose.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@ x-daemonless:
44
title: "Cloudflared"
55
icon: ":simple-cloudflare:"
66
category: "Infrastructure"
7-
description: "Cloudflare Tunnel client for exposing services securely."
7+
description: "Tunneling daemon that proxies any local webserver through the Cloudflare network without DNS records or firewall changes."
88
upstream_url: "https://github.com/cloudflare/cloudflared"
99
web_url: "https://developers.cloudflare.com/cloudflare-one/connections/connect-apps"
1010
freshports_url: "https://www.freshports.org/net/cloudflared/"
1111
user: "root"
1212
upstream_binary: false
13-
13+
appjail: true
14+
1415
docs:
1516
env:
1617
TUNNEL_TOKEN: "Required: The Cloudflare Tunnel token."

0 commit comments

Comments
 (0)