mirror of
https://github.com/vimagick/dockerfiles.git
synced 2024-12-14 11:23:34 +02:00
94 lines
2.0 KiB
Markdown
94 lines
2.0 KiB
Markdown
drone
|
|
=====
|
|
|
|
[Drone][1] is a Continuous Integration platform built on Docker, written in Go.
|
|
|
|
## github
|
|
|
|
```yaml
|
|
#
|
|
# Github » Settings » Applications » Developer applications » Register new application
|
|
#
|
|
Application name: drone
|
|
Homepage URL: http://drone.easypi.info/
|
|
Application description: Drone is a Continuous Integration platform built on Docker, written in Go
|
|
Authorization callback URL: http://drone.easypi.info/authorize
|
|
Client ID: ... (generated by github)
|
|
Client Secret: ... (generated by github)
|
|
```
|
|
|
|
## docker-compose.yml
|
|
|
|
```yaml
|
|
drone:
|
|
image: drone/drone
|
|
ports:
|
|
- "8000:8000"
|
|
volumes:
|
|
- ./drone:/var/lib/drone
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
environment:
|
|
- REMOTE_DRIVER=github
|
|
- REMOTE_CONFIG=https://github.com?client_id=...&client_secret=...
|
|
# - REMOTE_DRIVER=gogs
|
|
# - REMOTE_CONFIG=https://git.easypi.info/?open=false
|
|
- DEBUG=false
|
|
restart: always
|
|
|
|
wall:
|
|
image: drone/drone-wall
|
|
ports:
|
|
- "8080:80"
|
|
restart: always
|
|
```
|
|
|
|
> Drone will register gogs webhooks automatically, you don't need to do it manually.
|
|
|
|
## nginx/sites-enabled/drone
|
|
|
|
```
|
|
server {
|
|
listen 80;
|
|
server_name drone.easypi.info;
|
|
location / {
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $remote_addr;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header Host $http_host;
|
|
proxy_set_header Origin "";
|
|
|
|
proxy_pass http://127.0.0.1:8000;
|
|
proxy_redirect off;
|
|
proxy_http_version 1.1;
|
|
proxy_buffering off;
|
|
|
|
chunked_transfer_encoding off;
|
|
}
|
|
}
|
|
|
|
server {
|
|
listen 80;
|
|
server_name wall.easypi.info;
|
|
location / {
|
|
proxy_pass http://127.0.0.1:8080;
|
|
}
|
|
}
|
|
```
|
|
|
|
## up and running
|
|
|
|
```bash
|
|
# server
|
|
$ cd ~/fig/drone/
|
|
$ docker-compose up -d
|
|
$ docker-compose logs
|
|
|
|
# client (login with remote driver credential)
|
|
$ firefox http://drone.easypi.info/
|
|
|
|
# dashboard
|
|
$ firefox http://wall.easypi.info/
|
|
```
|
|
|
|
[1]: http://readme.drone.io/usage/overview/
|