Skip to content

Instantly share code, notes, and snippets.

@lirc572
Last active July 4, 2022 13:56
Show Gist options
  • Save lirc572/38b477756af9ed3241e8bc2af7cb9983 to your computer and use it in GitHub Desktop.
Save lirc572/38b477756af9ed3241e8bc2af7cb9983 to your computer and use it in GitHub Desktop.
Docker-compose file for Drone CI (with Docker runner)
version: '3'
# https://docs.drone.io/server/provider/gitea/
# https://docs.drone.io/runner/docker/overview/
services:
drone:
restart: unless-stopped
image: drone/drone:2
ports:
- 30000:80
volumes:
- /var/lib/drone:/data
environment:
- 'DRONE_GITEA_SERVER=https://git.example.com'
- DRONE_GITEA_CLIENT_ID=qqqqqqqqqq
- DRONE_GITEA_CLIENT_SECRET=wwwwwwwwww
- DRONE_RPC_SECRET=eeeeeeeeee
- DRONE_SERVER_HOST=ci.example.com
- DRONE_SERVER_PROTO=https
drone-runner-docker:
restart: unless-stopped
image: drone/drone-runner-docker:1
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- DRONE_RPC_PROTO=http
- DRONE_RPC_HOST=drone:80
- DRONE_RPC_SECRET=eeeeeeeeee
- DRONE_RUNNER_CAPACITY=2
- DRONE_RUNNER_NAME=my-runner
ports:
- 30001:3000
version: '3'
# https://docs.drone.io/server/provider/github/
# https://docs.drone.io/runner/docker/overview/
services:
drone:
restart: unless-stopped
image: drone/drone:2
ports:
- 30000:80
volumes:
- /var/lib/drone:/data
environment:
- DRONE_GITHUB_CLIENT_ID=qqqqqqqqqq
- DRONE_GITHUB_CLIENT_SECRET=wwwwwwwwww
- DRONE_RPC_SECRET=eeeeeeeeee
- DRONE_SERVER_HOST=ci.example.com
- DRONE_SERVER_PROTO=https
- DRONE_USER_CREATE=username:ur-gh-username,admin:true
- DRONE_USER_FILTER=user1,user2,user3
drone-runner-docker:
restart: unless-stopped
image: drone/drone-runner-docker:1
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- DRONE_RPC_PROTO=http
- DRONE_RPC_HOST=drone:80
- DRONE_RPC_SECRET=eeeeeeeeee
- DRONE_RUNNER_CAPACITY=2
- DRONE_RUNNER_NAME=my-runner
ports:
- 300001:3000
version: "3"
services:
server:
image: gitea/gitea:1.16.8
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=db:3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
restart: unless-stopped
volumes:
- /volumes/Gitea/data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "3000:3000"
- "2222:22"
depends_on:
- db
db:
image: mysql:8
restart: unless-stopped
environment:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
volumes:
- /volumes/Gitea/db:/var/lib/mysql
server {
listen 443 ssl;
listen [::]:443 ssl;
ssl_certificate /etc/ssl/cert.pem;
ssl_certificate_key /etc/ssl/key.pem;
server_name ci.example.com;
client_max_body_size 1G;
location / {
proxy_pass http://127.0.0.1:30000;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment