Skip to content

Instantly share code, notes, and snippets.

@appleboy
Created July 31, 2017 13:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save appleboy/0c0a202d829b8ef19ab893550d6a04b8 to your computer and use it in GitHub Desktop.
Save appleboy/0c0a202d829b8ef19ab893550d6a04b8 to your computer and use it in GitHub Desktop.
drone server + agent for docker swarm
version: "3"
networks:
traefik:
external: true
internal:
internal: true
volumes:
minio:
driver: local
server:
driver: local
services:
minio:
image: webhippie/minio:latest
environment:
- MINIO_ACCESS_KEY=REDACTED
- MINIO_SECRET_KEY=REDACTED
networks:
- traefik
- internal
labels:
- traefik.docker.network=traefik
- traefik.port=9000
- traefik.frontend.passHostHeader=true
- traefik.frontend.rule=Host:github.storehippie.de
deploy:
mode: replicated
replicas: 1
update_config:
parallelism: 1
delay: 10s
restart_policy:
condition: on-failure
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- /etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt:ro
- minio:/var/lib/minio
server:
image: drone/drone:0.8
environment:
- DRONE_DEBUG=true
- DRONE_OPEN=true
- DRONE_ORGS=webhippie
- DRONE_ADMIN=tboerger
- DRONE_SERVER_HOST=https://github.dronehippie.de
- DRONE_SECRET=REDACTED
- DRONE_DATABASE_DATASOURCE=/var/lib/drone/database.sqlite3
- DRONE_VOLUME=/etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt:ro
- DRONE_LICENSE=REDACTED
- DRONE_GITHUB=true
- DRONE_GITHUB_CLIENT=REDACTED
- DRONE_GITHUB_SECRET=REDACTED
- DRONE_VOLUME=/etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt
networks:
- traefik
- internal
labels:
- traefik.docker.network=traefik
- traefik.port=8000
- traefik.frontend.passHostHeader=true
- traefik.frontend.rule=Host:github.dronehippie.de
deploy:
mode: replicated
replicas: 1
update_config:
parallelism: 1
delay: 10s
restart_policy:
condition: on-failure
healthcheck:
test: ["NONE"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- /etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt:ro
- server:/var/lib/drone
depends_on:
- minio
agent:
image: drone/drone:0.8
environment:
- DRONE_SERVER=server:9000
- DRONE_SECRET=REDACTED
- DRONE_DEBUG=true
- DRONE_MAX_PROCS=3
networks:
- internal
labels:
- traefik.enable=false
deploy:
mode: replicated
replicas: 1
update_config:
parallelism: 1
delay: 10s
restart_policy:
condition: on-failure
healthcheck:
test: ["NONE"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- /etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt:ro
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
- server
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment