Skip to content

Drone CI

https://drone.cool/server/provider/gitea/

https://drone.cool/runner/docker/installation/linux/

sh
sudo mkdir -p /opt/drone/{server,runner}

sudo chown -R 1000:gitea /opt/drone
sudo chmod -R 2775 /opt/drone
sh
vim docker-compose.yml
sh
openssl rand -hex 16

docker-compose.yml 内容

yaml
services:
  drone-web-ui:
    image: drone/drone:2
    container_name: drone-web-ui
    restart: always
    environment:
      - DRONE_SERVER_PROTO=http
      - DRONE_SERVER_HOST=192.168.1.4:4000
      - DRONE_GITEA_SERVER=http://192.168.1.4
      - DRONE_GITEA_CLIENT_ID=dac168c1-bebf-476b-93d6-f5141d79a87d
      - DRONE_GITEA_CLIENT_SECRET=gto_m723nejybw5lxobmqgybt4jmanmg3jl3x2aognpnyqrcdxdyl3mq
      - DRONE_RPC_SECRET=e8dd4b1f7bd04297dc7eadab352aad23
    volumes:
      - ./server:/data
    ports:
      - "4000:80"
      - "4001:443"
  drone-runner-docker:
    image: drone/drone-runner-docker:1
    container_name: drone-runner-docker
    restart: always
    environment:
      - DRONE_RPC_HOST=192.168.1.4:4000
      - DRONE_RPC_SECRET=e8dd4b1f7bd04297dc7eadab352aad23
      - DRONE_RPC_PROTO=http
      - DRONE_RUNNER_CAPACITY=2
      - DRONE_RUNNER_NAME=drone-runner
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - "4002:3000"

安装 Exec Runner

没有 Exec Runner 的话,drone 会一直 Loading

安装文档:https://drone.cool/runner/exec/installation/linux/

sh
curl -L https://github.com/drone-runners/drone-runner-exec/releases/latest/download/drone_runner_exec_linux_amd64.tar.gz | tar zx
sudo install -t /usr/local/bin drone-runner-exec
github 下载会非常慢,可以下好了传过去
sh
tar -zxvf drone_runner_exec_linux_amd64.tar.gz

sudo install -t /usr/local/bin drone-runner-exec

以 root 身份运行

sh
sudo mkdir -p /etc/drone-runner-exec/
sudo mkdir -p /var/log/drone-runner-exec
cd /etc/drone-runner-exec/
vim config
DRONE_RPC_PROTO=http
DRONE_RPC_HOST=192.168.1.4:4000
DRONE_RPC_SECRET=e8dd4b1f7bd04297dc7eadab352aad23
DRONE_LOG_FILE=/var/log/drone-runner-exec/log.txt
sh
sudo drone-runner-exec service install
sudo drone-runner-exec service start

注意

配置 gitea 的 auto2 中,callback 地址一定要有 /login

如:http://192.168.1.4:4000/login