1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
cgitize in Docker
=================
cgitize is executed as a cron job inside the container.
The `SCHEDULE` environment variable controls how often it gets run (see below).
* Image: **egortensin/cgitize**
* Volumes:
* `/etc/cgitize/cgitize.toml`: configuration file path.
* `/mnt/cgitize`: by default, cloned repositories will be written here.
* `/ssh-agent.sock`: if you use SSH, map the agent socket here.
* Environment variables:
* `SCHEDULE`: defaults to "once", which makes the container exit after the
first run.
You can also set it to "minutely", "15min", "hourly", "daily", "weekly",
"monthly" or a custom 5-part cron schedule like "*/5 * * * *".
Frontend
--------
There's a web server image with a working cgit installation.
* Image: **egortensin/cgitize-frontend**
* Volumes:
* `/etc/cgitrc`: if you use a custom cgit configuration, map it here.
It could look like this:
# Generally useful and opionated settings, included in the image.
include=/etc/cgit/common
# If you serve from a subdirectory.
virtual-root=/custom/
root-title=Custom title
root-desc=Custom description
* `/mnt/cgitize`: map cgitize's output directory here.
Compose
-------
Here's an example docker-compose.yml file:
version: '3'
services:
cgitize:
environment:
# Every 3 hours:
SCHEDULE: '0 */3 * * *'
# Set CGITIZE_{GITHUB,BITBUCKET,GITLAB}_{USERNAME,TOKEN} variables
# here or in the config file.
image: egortensin/cgitize:5
restart: unless-stopped
volumes:
- ./example.toml:/etc/cgitize/cgitize.toml:ro
- /srv/volumes/cgitize:/mnt/cgitize
frontend:
image: egortensin/cgitize-frontend:5
ports:
- '127.0.0.1:80:80'
restart: unless-stopped
volumes:
- /srv/volumes/cgitize:/mnt/cgitize:ro
In this configuration, cgitize pulls repositories defined in example.toml every
3 hours and puts them to /srv/volumes/cgitize on the host.
To launch containers, run:
docker-compose up -d
To inspect the repositories, visit http://localhost:80/.
|