update readme

This commit is contained in:
Nico Schottelius 2019-12-14 23:31:54 +01:00
parent 5572eace36
commit 23a3bdbd50
1 changed files with 49 additions and 0 deletions

49
README.md Normal file
View File

@ -0,0 +1,49 @@
This container provides fully automated SSL containers in IPv6
networks
## Requirements
You need to have docker configured to use IPv6. The following code can
be placed in /etc/docker/daemon.json:
```
{
"ipv6": true,
"fixed-cidr-v6": "2001:db8::/64"
}
```
You need to replace "2001:db8::/64" with your own IPv6 network.
Read more about [enabling IPv6 in docker](https://ungleich.ch/u/blog/how-to-enable-ipv6-in-docker/).
## How it works
IPv6 addresses are globally reachable, so IPv6 based containers can be
reached from anywhere in the world.
This container uses the domain **has-a.name**, which gives a
name to every IPv6 address.
Checkout how
[has-a.name](https://ungleich.ch/u/blog/has-a-name-for-every-ipv6-address/) works.
## How to use
Start the container and use the logs to gets its domain name:
```
id=$(docker run -d ungleich/nginx-letsencrypt-ipv6)
docker logs ${id} 2>/dev/null | grep "^Getting certificate"
Getting certificate for 2a0a-e5c1-0111-0777-0000-0242-ac11-0004.has-a.name
```
With this information, you can now connect to your container:
```
% curl https://2a0a-e5c1-0111-0777-0000-0242-ac11-0004.has-a.name
Welcome to 2a0a-e5c1-0111-0777-0000-0242-ac11-0004.has-a.name running with IPv6+LetsEncrypt
```
## How to extend it
TBD