Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jnordberg/leeroy
Docker build bot
https://github.com/jnordberg/leeroy
Last synced: 4 days ago
JSON representation
Docker build bot
- Host: GitHub
- URL: https://github.com/jnordberg/leeroy
- Owner: jnordberg
- License: mit
- Created: 2018-01-28T21:02:28.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-11-08T00:04:32.000Z (about 6 years ago)
- Last Synced: 2024-11-02T01:42:12.405Z (11 days ago)
- Language: TypeScript
- Size: 113 KB
- Stars: 35
- Watchers: 5
- Forks: 4
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
leeroy
======Docker image build bot, because Docker Hub is too slow and Jenkins sucks.
### Features
* Automatically builds and publishes Docker images for your GitHub branches
* No spawning, uses libgit2 and Docker sockets
* Safely does concurrent builds
* Reports build status via optional Slack integration
* Easy to setupQuick start
-----------Start a leeroy server:
```
docker run -d -p 8080:8080 --name leeroy \
-e DOCKER_AUTH="{\"username\":\"foo\",\"password\":\"bar\"}" \
-e SLACK_URL=https://hooks.slack.com/services/YOUR/WEBHOOK/URL \
-e GITHUB_SECRET=supersecret \
-v /var/run/docker.sock:/var/run/docker.sock \
jnordberg/leeroy
```Go to `https://github.com///settings/hooks/new` for each repository you want to build and add `/hooks/github` with the content-type `appplication/json` and secret set to the same as `GITHUB_SECRET` above.
*Enjoy your fast automated builds!*
Configuration
-------------The docker socket defaults to `/var/run/docker.sock` and can be set just like the docker cli using the `DOCKER_HOST` environment variable.
Repository authentication is passed as a JSON encoded string in `DOCKER_AUTH`.
E.g. `DOCKER_AUTH="{\"username\":\"foo\",\"password\":\"bar\"}"`See [config/default.toml](config/default.toml) for more options and [config/custom-environment-variables.toml](config/custom-environment-variables.toml) for the corresponding env vars.
Developing
----------Checkout the repository and run `make devserver`, see the [Makefile](Makefile) for more useful commands. Use [ngrok](https://ngrok.com) to conveniently test webhooks.
---
*At least I ain't chicken*