Browse Source

Merge pull request #9 from csmith/instructions

Add instructions, update compose file.
pull/12/head
Daniel Oaks 5 years ago
parent
commit
2a9b9fe802
No account linked to committer's email address
2 changed files with 87 additions and 2 deletions
  1. 81
    1
      README.md
  2. 6
    1
      docker-compose.yml

+ 81
- 1
README.md View File

@@ -1,3 +1,83 @@
1 1
 # Oragono Docker
2 2
 
3
-This repo holds Oragono's Dockerfiles and such.
3
+This repo holds [Oragono](https://github.com/oragono/oragono)'s Dockerfiles and
4
+related materials.
5
+
6
+## Tags
7
+
8
+The following tags are available:
9
+
10
+ * `dev` - latest development version; published periodically (may be unstable)
11
+
12
+## Quick start
13
+
14
+The Oragono docker image is designed to work out of the box - it comes with a
15
+usable default config and will automatically generate self-signed TLS
16
+certificates. To get a working ircd, all you need to do is run the image and
17
+expose the ports:
18
+
19
+```shell
20
+docker run -d -P oragono/oragono:tag
21
+```
22
+
23
+This will start Oragono and listen on ports 6667 (plain text) and 6697 (TLS).
24
+
25
+## Persisting data
26
+
27
+Oragono has a persistent data store, used to keep account details, channel
28
+registrations, and so on. To persist this data across restarts, you can mount
29
+a volume at /ircd.
30
+
31
+For example, to create a new docker volume and then mount it:
32
+
33
+```shell
34
+docker volume create oragono-data
35
+docker run -d -v oragono-data:/ircd -P oragono/oragono:tag
36
+```
37
+
38
+Or to mount a folder from your host machine:
39
+
40
+```shell
41
+mkdir oragono-data
42
+docker run -d -v $(PWD)/oragono-data:/ircd -P oragono/oragono:tag
43
+```
44
+
45
+## Customising the config
46
+
47
+Oragono's config file is stored at /ircd/ircd.yaml. If the file does not
48
+exist, the default config will be written out. You can copy the config from
49
+the container, edit it, and then copy it back:
50
+
51
+```shell
52
+# These commands assume the container is named `oragono`
53
+# If you didn't name it, use `docker container ls` to find the name
54
+docker cp oragono:/ircd/ircd.yaml .
55
+vim ircd.yaml # edit the config to your liking
56
+docker cp ircd.yaml oragono:/ircd/ircd.yaml
57
+```
58
+
59
+You can use the `/rehash` command to make Oragono reload its config, or
60
+send it the HUP signal:
61
+
62
+```shell
63
+docker kill -HUP oragono
64
+```
65
+
66
+## Using custom TLS certificates
67
+
68
+TLS certs will by default be read from /ircd/tls.crt, with a private key
69
+in /ircd/tls.key. You can customise this path in the ircd.yaml file if
70
+you wish to mount the certificates from another volume. For information
71
+on using Let's Encrypt certificates, see
72
+[this manual entry](https://github.com/oragono/oragono/blob/master/docs/MANUAL.md#how-do-i-use-lets-encrypt-certificates).
73
+
74
+## Using docker-compose
75
+
76
+This repository contains a sample docker-compose file which can be used
77
+to start an Oragono instance with ports exposed and data persisted in
78
+a docker volume. Simply download the file and then bring it up:
79
+
80
+```shell
81
+curl -O https://raw.githubusercontent.com/oragono/oragono-docker/master/docker-compose.yml
82
+docker-compose up -d
83
+```

+ 6
- 1
docker-compose.yml View File

@@ -2,10 +2,12 @@ version: "3.2"
2 2
 
3 3
 services:
4 4
   oragono:
5
-    image: oragono/oragono
5
+    image: oragono/oragono:dev
6 6
     ports:
7 7
       - "6667:6667/tcp"
8 8
       - "6697:6697/tcp"
9
+    volumes:
10
+      - data:/ircd
9 11
     deploy:
10 12
       placement:
11 13
         constraints:
@@ -13,3 +15,6 @@ services:
13 15
       restart_policy:
14 16
         condition: on-failure
15 17
       replicas: 1
18
+
19
+volumes:
20
+  data:

Loading…
Cancel
Save