Sign inSign up

kitkit/drone

By kitkit

•Updated almost 5 years ago

支持 码云Gitee 的drone server版本(The version supports gitee)

Image
0

1.8K

kitkit/drone repository overview

⁠支持 码云Gitee⁠ 的drone server版本

Build Status

⁠支持配置如下:
  • DRONE_GITEE_SERVER: gitee服务地址,default:"https://gitee.com⁠"
  • DRONE_GITEE_API_SERVER: gitee api 地址,default:"https://gitee.com/api/v5⁠"
  • DRONE_GITEE_CLIENT_ID: gitee 第三方应用oauth2 client id
  • DRONE_GITEE_CLIENT_SECRET: gitee 第三方应用oauth2 client secret
  • DRONE_GITEE_REDIRECT_URL: gitee登录重定向地址,不填写自动生成 服务器访问链接+"/login" {server_addr}/login
  • DRONE_GITEE_SCOPE: 需要的授权范围,default:"user_info,projects,pull_requests,hook"
  • DRONE_GITEE_DEBUG:
⁠搭配drone原服务配置:
  • DRONE_SERVER_HOST: server host, 即域名
  • DRONE_SERVER_PROTO: server 协议头 http/https
  • DRONE_RPC_SECRET: RPC密钥,runner与server通信的token
⁠部署示例
⁠1. 创建rpc secret
$ openssl rand -hex 16
bea26a2221fd8090ea38720fc445eca6
⁠2.1 docker单server运行参考:
docker run \
  --volume=/var/lib/drone:/data \
  --env=DRONE_GITEE_CLIENT_ID=xxxxxxxxxxxxxx \
  --env=DRONE_GITEE_CLIENT_SECRET=xxxxxxxxxxxxxx \
  --env=DRONE_SERVER_HOST=dronehost.example.com \
  --env=DRONE_SERVER_PROTO=http \
  --env=DRONE_RPC_SECRET=bea26a2221fd8090ea38720fc445eca6 \
  --publish=80:80 \
  --publish=443:443 \
  --restart=always \
  --detach=true \
  --name=drone \
  kitkit/drone:gitee
⁠2.2 server、本地agent 运行参考

设置DRONE_AGENTS_DISABLED=true并挂载docker.sock

docker run \
  --volume=/opt/drone2/data:/data \
  --volume=/var/run/docker.sock:/var/run/docker.sock \
  --env=DRONE_AGENTS_DISABLED=true \
  --env=DRONE_GITEE_CLIENT_ID=xxxx \
  --env=DRONE_GITEE_CLIENT_SECRET=xxxx \
  --env=DRONE_SERVER_HOST=dronehost.example.com \
  --env=DRONE_SERVER_PROTO=http \
  --env=DRONE_RPC_SECRET=bea26a2221fd8090ea38720fc445eca6 \
  --publish=80:80 \
  --publish=443:443 \
  --restart=always \
  --detach=true \
  --name=drone \
  kitkit/drone:gitee
⁠2.3 server、runner分离docker-compose参考
# docker-compose.yaml
version: '3'

services:

  server:
    image: kitkit/drone:gitee
    ports:
      - 80:80
      - 443:443
    volumes:
      - /opt/drone/data:/data:rw
    networks:
      - drone
    restart: always
    environment:
      - DRONE_SERVER_HOST=dronehost.example.com
      - DRONE_SERVER_PROTO=http
      - DRONE_RPC_SECRET=bea26a2221fd8090ea38720fc445eca6
      - DRONE_GITEE_CLIENT_ID=xxxx
      - DRONE_GITEE_CLIENT_SECRET=xxxx

  runner:
    image: drone/drone-runner-docker
    restart: always
    networks:
      - drone
    depends_on:
      - server
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:rw
    environment:
      - DRONE_RPC_PROTO=http
      - DRONE_RPC_HOST=server
      - DRONE_RPC_SECRET=bea26a2221fd8090ea38720fc445eca6
      - DRONE_RUNNER_NAME=runner-1
      - DRONE_RUNNER_CAPACITY=2
      - DRONE_HTTP_PROTO=http
      - DRONE_HTTP_HOST=runner

networks:
  drone:

更多使用技巧参考drone官方文档: https://docs.drone.io/⁠

Tag summary

Content type

Image

Digest

Size

23.4 MB

Last updated

almost 5 years ago

docker pull kitkit/drone