Skip to content

Commit 9e562e9

Browse files
authored
update readme to use the published chart (#38)
1 parent 20b498f commit 9e562e9

File tree

1 file changed

+35
-32
lines changed

1 file changed

+35
-32
lines changed

README.md

+35-32
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,45 @@
11
# Caddy Ingress Controller
22

3-
This is the Kubernetes Ingress Controller for Caddy. It includes functionality for monitoring
4-
Ingress resources on a Kubernetes cluster and includes support for providing automatic HTTPS
5-
certificates for all hostnames defined in ingress resources that it is managing.
6-
7-
**The community is looking for maintainers with Kubernetes experience who can commit to help finish the development of this tool.** Please get involved!
3+
This is the Kubernetes Ingress Controller for Caddy. It includes functionality
4+
for monitoring `Ingress` resources on a Kubernetes cluster and includes support
5+
for providing automatic HTTPS certificates for all hostnames defined in ingress
6+
resources that it is managing.
87

98
## Cloud Provider Setup (AWS, GCLOUD, ETC...)
109

11-
In the Kubernetes folder a Helm Chart is provided to make installing the Caddy Ingress Controller
12-
on a Kubernetes cluster straight forward. To install the Caddy Ingress Controller adhere to the
13-
following steps:
10+
In the `charts` folder a Helm Chart is provided to make installing the Caddy
11+
Ingress Controller on a Kubernetes cluster straight forward. To install the
12+
Caddy Ingress Controller adhere to the following steps:
1413

1514
1. Create a new namespace in your cluster to isolate all Caddy resources.
1615

1716
```sh
18-
kubectl apply -f ./kubernetes/deploy/00_namespace.yaml
17+
kubectl create namespace caddy-system
1918
```
2019

21-
2. Install the Helm Chart. (If you do not want automatic https set `autotls` to false and do not include
22-
your email address as a value to the helm chart.)
20+
2. Install the Helm Chart.
2321

2422
```sh
25-
helm template \
26-
--namespace=caddy-system ./kubernetes/helm/caddyingresscontroller/ \
27-
--set autotls=true \
28-
--set [email protected] | kubectl apply -f -
23+
helm install \
24+
--namespace=caddy-system \
25+
--repo https://caddyserver.github.io/ingress/ \
26+
--atomic \
27+
--set image.tag=latest
28+
mycaddy \
29+
caddy-ingress-controller
2930
```
3031

31-
The helm chart will create a service of type `LoadBalancer` in the `caddy-system` namespace on your cluster. You'll want to
32-
set any DNS records for accessing this cluster to the external IP address of this LoadBalancer when the
33-
external IP is provisioned by your cloud provider.
32+
The helm chart create a service of type `LoadBalancer` in the `caddy-system`
33+
namespace on your cluster. You'll want to set any DNS records for accessing this
34+
cluster to the external IP address of this `LoadBalancer` when the external IP
35+
is provisioned by your cloud provider.
3436

3537
You can get the external IP address with `kubectl get svc -n caddy-system`
3638

3739
## Debugging
3840

39-
To view any logs generated by Caddy or the Ingress Controller you can view the pod logs of the Caddy Ingress Controller.
41+
To view any logs generated by Caddy or the Ingress Controller you can view the
42+
pod logs of the Caddy Ingress Controller.
4043

4144
Get the pod name with:
4245

@@ -52,28 +55,28 @@ kubectl logs <pod-name> -n caddy-system
5255

5356
## Automatic HTTPS
5457

55-
By default, any hosts defined in an ingress resource will configure caddy to automatically get certificates from let's encrypt and
56-
will serve your side over HTTPS.
57-
58-
To disable automattic https you can set the argument `tls` on the caddy ingress controller to `false`.
58+
To enable automatic https via ingress controller using Let's Encrypt you can set
59+
the argument `ingressController.autotls=true` and the email to use
60+
`[email protected]` on the caddy ingress controller helm
61+
chart values.
5962

6063
Example:
6164

62-
Add args `tls=false` to the deployment.
65+
- `--set ingressController.autotls=true`
66+
6367

64-
```
65-
args:
66-
- -tls=false
67-
```
68+
when you execute the helm-chart installation.
6869

6970
## Bringing Your Own Certificates
7071

71-
If you would like to disable automatic HTTPS for a specific host and use your own certificates you can create a new TLS secret in Kubernetes and define
72-
what certificates to use when serving your application on the ingress resource.
72+
If you would like to disable automatic HTTPS for a specific host and use your
73+
own certificates you can create a new TLS secret in Kubernetes and define what
74+
certificates to use when serving your application on the ingress resource.
7375

7476
Example:
7577

76-
Create TLS secret `mycerts`, where `./tls.key` and `./tls.crt` are valid certificates for `test.com`.
78+
Create TLS secret `mycerts`, where `./tls.key` and `./tls.crt` are valid
79+
certificates for `test.com`.
7780

7881
```
7982
kubectl create secret tls mycerts --key ./tls.key --cert ./tls.crt
@@ -99,4 +102,4 @@ spec:
99102
- hosts:
100103
- test.com
101104
secretName: mycerts # use mycerts for host test.com
102-
```
105+
```

0 commit comments

Comments
 (0)