Skip to content

Commit eff295c

Browse files
committed
Point to Helm chart to setup dashboard ingress
Signed-off-by: Alex Ellis (OpenFaaS Ltd) <[email protected]>
1 parent c10dc7c commit eff295c

File tree

1 file changed

+8
-46
lines changed

1 file changed

+8
-46
lines changed

docs/openfaas-pro/dashboard.md

Lines changed: 8 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ To access the dashboard run the following, whenever you need it:
224224
```bash
225225
kubectl port-forward \
226226
-n openfaas \
227-
svc/dashboard 8081:8080
227+
service/dashboard 8081:8080
228228
```
229229

230230
The username is `admin` and the password is the same one used for `faas-cli login`.
@@ -233,56 +233,18 @@ Then access the URL via `http://127.0.0.1:8081`
233233

234234
### Expose your dashboard on the Internet
235235

236-
Once deployed, you can leave your dashboard private, and access it via port-forwarding, or create a Public Ingress record to access it over the Internet.
236+
The Helm chart has instructions for exposing both the gateway and the dashboard over the Internet using Let's Encrypt and cert-manager. You can also create your your custom Ingress record or Istio Gateway, the dashboard is available at `http://dashboard.openfaas:8080` within the cluster.
237237

238-
There two three options for Public Ingress:
238+
See also: [TLS for OpenFaaS](/reference/tls/)
239239

240-
* Kubernetes Ingress Controller
241-
* Istio Gateway/VirtualService.
240+
### Access OpenFaaS over TLS from your local machine
242241

243-
If your cluster does not have a public IP, but you still want to access the dashboard over the Internet, we have included notes on how [inlets.dev](https://inlets.dev) can help.
242+
When working locally, you will not have a public IP address available. You can use an inlets tunnel to access your OpenFaaS gateway and dashboard over TLS.
244243

245-
Assuming you already have a Let's Encrypt Issuer and are using ingress-nginx, you could use the following example:
244+
Set up the tunnel using these steps: [inlets automated HTTP server](https://docs.inlets.dev/tutorial/automated-http-server/), then apply the below YAML for the tunnel client, to expose both the gateway and the dashboard.
246245

247-
```bash
248-
export DOMAIN="openfaas.example.com"
249-
export INGRESS_CLASS=nginx
250-
251-
cat > ingress.yaml <<EOF
252-
apiVersion: networking.k8s.io/v1
253-
kind: Ingress
254-
metadata:
255-
name: openfaas-dashboard
256-
namespace: openfaas
257-
labels:
258-
app: openfaas-dashboard
259-
annotations:
260-
cert-manager.io/issuer: letsencrypt-prod
261-
kubernetes.io/tls-acme: "true"
262-
$INGRESS_CLASS.ingress.kubernetes.io/ssl-redirect: "true"
263-
kubernetes.io/ingress.class: $INGRESS_CLASS
264-
spec:
265-
rules:
266-
- host: $DOMAIN
267-
http:
268-
paths:
269-
- backend:
270-
service:
271-
name: dashboard
272-
port:
273-
number: 8080
274-
path: /
275-
pathType: Prefix
276-
tls:
277-
- hosts:
278-
- $DOMAIN
279-
secretName: dashboard-cert
280-
EOF
281-
```
282-
283-
TLS is mandatory, and you'll use your OpenFaaS password to log in with your browser.
284-
285-
A much simpler alternative for local testing and development is to set up an inlets VM in HTTPS mode: [inlets automated HTTP server](https://docs.inlets.dev/tutorial/automated-http-server/).
246+
* Edit the `token`, `license`, and `url` fields as per the output from link above.
247+
* Then update the values for `upstream`to match the domain names you're using for the gateway and dashboard, make sure you've created DNS A or CNAME records to point to the tunnel server.
286248

287249
```yaml
288250
apiVersion: apps/v1

0 commit comments

Comments
 (0)