Drone是一个用Go语言开发的基于容器运行的持续集成软件。
请注意,目前Drone1.0.0rc已经发布,但是本文所有内容均基于Drone0.8.0。
安装
Drone可以通过Docker安装,请参考https://0-8-0.docs.drone.io/installation/
运行时需要通过环境变量设置与Drone集成的版本控制系统。drone支持的版本控制系统包括GitHub,Gogs,GitLab等。我使用的是Gogs。
你可以修改后使用下面的compose文件。
version: '2' services: drone-server-gogs: image: drone/drone:0.8 ports: - 8020:8000 - 9000 volumes: - ./drone-gogs-data/:/var/lib/drone/ restart: always environment: - DRONE_OPEN=false - DRONE_HOST=https://drone-ci.example.com - DRONE_ADMIN=admin - DRONE_GOGS=true - DRONE_GOGS_URL=https://git.example.com/ - DRONE_SECRET=secret drone-agent-gogs: image: drone/agent:0.8 command: agent restart: always links: - drone-server-gogs depends_on: - drone-server-gogs volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - DRONE_SERVER=drone-server-gogs:9000 - DRONE_SECRET=secret