]> jfr.im git - irc/UndernetIRC/undernet-development-env.git/blob - README.md
981fdfccbfc03f115d7d48c636bca1815d1bb057
[irc/UndernetIRC/undernet-development-env.git] / README.md
1 UnderNET Development Environment
2 ================================
3
4 This repository contain a docker based development environment for UnderNET.
5
6 It includes the following services:
7
8 - hub (ircu2)
9 - leaf server (ircu2)
10 - PostgreSQL database
11 - mail server (mailhog)
12 - cservice web portal
13 - GNUworld (enabled modules: cservice, ccontrol, openchanfix, dronescan)
14
15
16 # Requirements to setup the environment
17
18 - [Docker](https://www.docker.com/)
19 - [docker-compose](https://docs.docker.com/compose/)
20
21
22 # Getting started
23
24 This project uses git submodules. After cloning this repository the submodules needs to be
25 initialized and updated. Follow this step-by-step guide to get your new UnderNET environment
26 up and running.
27
28 ```
29 git clone https://github.com/Ratler/undernet-development-env.git
30 cd undernet-development-env
31 git submodule init
32 git submodule update
33 docker-compose up -d
34 ```
35
36 ## Service information (hosts, ports and login information)
37
38 The following ports below are mapped from your host to the container:
39
40 | Service | URL / ip:port | Comments |
41 |--------------|------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
42 | hub | Server: localhost:4400 <br> Client: localhost:6669 | The default `/oper` username is `admin` with the password `admin` |
43 | leaf | Server: localhost:4401 <br> Client: localhost:6667 | The default `/oper` username is `admin` with the password `admin` |
44 | db | localhost:5432 | The default db username is `cservice` with the password `cservice`, works for all the databases. <br> Databases: `cservice`, `ccontrol`, `chanfix`, `dronescan`, `local_db` |
45 | mail | SMTP: localhost:1025 <br> WEB: http://localhost:8025 | Captures e-mails from cservice-web, <br>e-mails can be accessed from the WEB url. |
46 | cservice-web | http://localhost:8080 | Default admin (level 1000) user is `Admin` with the password `temPass2020@` |
47
48
49 # Configuration
50
51 The configuration for the `hub`, `leaf` and `gnuworld` can be changed in the folder `etc/`.
52 All the files are mounted inside the container as volumes, so any change done on your host
53 is reflected in the container immediately. For example after changing `etc/hub.conf`, just
54 `/rehash` the IRC server to apply the changes.
55
56 For the service `cservice-web` the configuration can be changed from `cservice-web/php_includes`. Any configuration
57 or code change will be applied immediately.
58
59 # Making code changes in ircu or gnuworld
60
61 After making any code change in either ircu or gnuworld the container need to be rebuilt and restarted.
62
63 Rebuild ircu (hub and leaf share the same image):
64 ```
65 docker-compose build hub
66 docker-compose restart hub
67 docker-compose restart leaf
68 ```
69
70 Rebuild and restart gnuworld:
71 ```
72 docker-compose build gnuworld
73 docker-compose restart gnuworld
74 ```
75
76
77 # FAQ
78 Q: Why do I see this message _"X (cservice@undernet.org): AUTHENTICATION FAILED as <user>
79 (Unable to login during reconnection, please try again in 295 seconds)"_ when trying to
80 authenticate with `x@channels.undernet.org`?
81
82 A: This is a burst connection mechanism in GNUworld which happen when it links to its hub.
83 Just wait for it to complete and try again. Or you can change the setting `login_delay` in
84 `etc/gnuworld/cservice.conf`, it's currently set to 5 seconds.