dockerhub-webhook
所属分类:构建工具
开发工具:JavaScript
文件大小:0KB
下载次数:0
上传日期:2022-06-26 09:48:35
上 传 者:
sh-1993
说明: Docker中心webhook
(Docker hub webhook)
文件列表:
.dockerignore (21, 2017-07-13)
.travis.yml (195, 2017-07-13)
CHANGES.md (518, 2017-07-13)
Dockerfile (763, 2017-07-13)
config/ (0, 2017-07-13)
config/index.js (272, 2017-07-13)
docker-compose.yml (329, 2017-07-13)
dockerhook.png (20529, 2017-07-13)
dockerhub.env (30, 2017-07-13)
handlers/ (0, 2017-07-13)
handlers/index.js (1540, 2017-07-13)
index.js (65, 2017-07-13)
lib/ (0, 2017-07-13)
lib/dockerhub-callback.js (1295, 2017-07-13)
lib/run-script.js (901, 2017-07-13)
package.json (1300, 2017-07-13)
plugins/ (0, 2017-07-13)
plugins/index.js (435, 2017-07-13)
routes/ (0, 2017-07-13)
routes/index.js (524, 2017-07-13)
scripts/ (0, 2017-07-13)
scripts/fail.sh (21, 2017-07-13)
scripts/hello.sh (52, 2017-07-13)
scripts/index.js (201, 2017-07-13)
scripts/maccyber.io.sh (167, 2017-07-13)
server.js (751, 2017-07-13)
test/ (0, 2017-07-13)
test/data/ (0, 2017-07-13)
test/data/dockerhub.json (683, 2017-07-13)
test/test-config.js (239, 2017-07-13)
test/test-dockerhub-callback.js (1551, 2017-07-13)
test/test-modules.js (260, 2017-07-13)
test/test-routes.js (2769, 2017-07-13)
test/test-run-script.js (1652, 2017-07-13)
[![Build Status](https://travis-ci.org/maccyber/dockerhub-webhook.svg?branch=master)](https://travis-ci.org/maccyber/dockerhub-webhook)
[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](https://github.com/feross/standard)
[![Coverage Status](https://coveralls.io/repos/github/maccyber/dockerhub-webhook/badge.svg)](https://coveralls.io/github/maccyber/dockerhub-webhook)
[![Code Climate](https://codeclimate.com/github/maccyber/dockerhub-webhook/badges/gpa.svg)](https://codeclimate.com/github/maccyber/dockerhub-webhook)
# dockerhub-webhook
**Unsupported!** See [maccyber/micro-dockerhub-hook](https://github.com/maccyber/micro-dockerhub-hook) instead.
Automatic [docker](https://www.docker.com) deployment with [webhooks](https://docs.docker.com/docker-hub/builds/#webhooks).
dockerhub-webhook listens to incoming HTTP POST-requests from hub.docker.com and triggers your specified script(s).
## Features
* Lightweight
* Pretty simple setup process
* Can be runned in a docker container
* Supports updating multiple docker images
* Scripts can trigger docker or docker-compose
* Used in production
* Good logging
# Create a token
Create a secret token with ``openssl``, ``uuidgen`` or something else. Don't use any slashes since token is going to be used in the URL.
```sh
export TOKEN=$(uuidgen)
echo $TOKEN
```
# Installation alternatives
## 1. Run on host
### Install
Nodejs and npm must be installed.
```sh
git clone http://github.com/maccyber/dockerhub-webhook
cd dockerhub-webhook
npm i
```
### Edit config
See [config/index.js](config/index.js)
```sh
vim config/index.js
```
### Configure repos and scripts
See [scripts/index.js](scripts/index.js)
```sh
vim scripts/index.js
```
### Start dockerhub-webhook
```sh
npm start
```
## 2. Run with docker-compose
Git clone
```sh
git clone http://github.com/maccyber/dockerhub-webhook
```
Add secret token in dockerhub.env with
```sh
vim dockerhub.env
```
Start with
```sh
docker-compose up -d
```
## 3. Run from docker hub
Git clone
```sh
git clone http://github.com/maccyber/dockerhub-webhook
```
Start with
```sh
docker run -d \
-p 3000:3000 \
-e SERVER_PORT=3000 \
-e TOKEN=${token} \
-e ROUTE=/api \
-v ${PWD}/scripts:/src/scripts \
-v /var/run/docker.sock:/var/run/docker.sock \
--name dockerhub-webhook \
maccyber/dockerhub-webhook
```
# Configuration on docker hub
Go to https://hub.docker.com/ -> your repo -> Webhooks
Add a webhook like on the following image.
![alt tag](dockerhook.png)
Replace ``example.com`` with the domain of your server or it's ip address.
Replace ``abc123`` with your secret token.
docker-hook listens to port 3000 by default.
近期下载者:
相关文件:
收藏者: