1 Run this [ngIRCd][] image with:
3 $ docker run -d --name ngircd-0 --hostname irc.example.net \
4 > -e DESCRIPTION="My IRC server" \
5 > -e LOCATION="My attic" \
6 > -e EMAIL="admin@example.net" \
7 > -e INFO="testing, testing" \
8 > -p 6667:6667 wking/ngircd
10 For [SSL / TLS][TLS], set the `SSL` environment variable to `yes` and
11 [volume-mount][volume-mount] your keys under the container's
14 $ docker run -d --name ngircd-0 --hostname irc.example.net \
17 > -v /etc/ssl/ngircd-0:/etc/ngircd/ssl \
18 > -p 6697:6697 wking/ngircd
20 You'll [need][SSL-docs] at least `server-cert.pem` and
21 `server-key.pem` in that directory. If you're using DH or DSA keys,
22 you'll also want `dhparams.pem` with [Diffie–Hellman][DH] parameters;
23 you can manage the file with OpenSSH's [dhparam][]). If you don't
24 want to require SSL, you can expose both the [encrypted port][6697]
25 and the [unencrypted port][6667]:
27 $ docker run -d --name ngircd-0 --hostname irc.example.net \
29 > -p 6667:6667 -p 6697:6697 wking/ngircd
31 You can optionally set a `GLOBAL_PASSWORD` environment variable to
32 require a global password for all client connections, although the
33 password length is [limited to 20 characters since ngIRCd
34 v0.9][password-limit].
36 [ngIRCd]: http://ngircd.barton.de/
37 [TLS]: http://en.wikipedia.org/wiki/Transport_Layer_Security
38 [volume-mount]: http://docs.docker.io/en/latest/use/working_with_volumes/
39 [SSL-docs]: http://ngircd.barton.de/doc/SSL.txt
40 [DH]: http://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange
41 [dhparam]: http://www.openssl.org/docs/apps/dhparam.html
42 [6697]: http://tools.ietf.org/html/draft-hartmann-default-port-for-irc-via-tls-ssl-09
43 [6667]: http://tools.ietf.org/html/draft-hartmann-default-port-for-irc-via-tls-ssl-09#section-1
44 [password-limit]: http://ngircd.barton.de/doc/INSTALL