我用bitbucket服务器尝试无人机0.5, 它看起来很紧密,因为我可以看到我的存储库。 但它一直说它还没有任何构建。 我把drone.yml添加到我的回购中但没有...我错过了什么
答案 0 :(得分:1)
我注意到你说过你了:
我将drone.yml添加到了我的仓库
然而,这会有问题,因为您必须添加:
.drone.yml
请注意,正确的文件有“。”在它面前。
此外,您应该尝试手动输入授权网址,以便无人机访问您的bitbucket帐户(ps无人机在没有某种scm设置的情况下无法工作)授权网址的示例如下:
https://my.exampleurl.com/authorize
这些与您在此处可以找到的相同说明类似:http://readme.drone.io/admin/installation-guide/
我经常看到人们发布这样的链接,然后有人会要求他们将链接的内容复制到实际的响应中,所以我要在这里做(你知道以防链接飞走了):
Drone在一个临时Docker镜像中作为单个二进制文件分发。 Docker是唯一的依赖项。本指南演示了如何使用docker-compose安装Drone。
示例Docker使用GitHub集成撰写文件:
version: '2'
services:
drone-server:
image: drone/drone:0.5
ports: [ 80:8000 ]
volumes: [ ./drone:/var/lib/drone/ ]
restart: always
environment:
- DRONE_OPEN=true
- DRONE_GITHUB=true
- DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
- DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
- DRONE_SECRET=${DRONE_SECRET}
drone-agent:
image: drone/drone:0.5
command: agent
restart: always
depends_on: [ drone-server ]
volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
environment:
- DRONE_SERVER=ws://drone-server:8000/ws/broker
- DRONE_SECRET=${DRONE_SECRET}
Drone与多个版本控制提供程序集成,使用环境变量进行配置。此示例演示了基本的GitHub集成。
您需要使用GitHub注册Drone以获取oauth2客户端和密钥。授权回调网址应匹配:/// authorize
services:
drone-server:
image: drone/drone:0.5
ports: [ 80:8000 ]
volumes: [ ./drone:/var/lib/drone/ ]
restart: always
environment:
- DRONE_OPEN=true
+ - DRONE_GITHUB=true
+ - DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
+ - DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
- DRONE_SECRET=${DRONE_SECRET}
Drone在主机上安装卷以持久保存sqlite数据库。使用备用数据库引擎时不需要这样做。
services:
drone-server:
image: drone/drone:0.5
ports: [ 80:8000 ]
+ volumes: [ ./drone:/var/lib/drone/ ]
restart: always
无人机代理需要访问主机Docker守护程序。
services:
drone-agent:
image: drone/drone:0.5
command: agent
restart: always
depends_on: [ drone-server ]
+ volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
无人机代理需要服务器地址进行代理到服务器通信。 启用TLS时,您的服务器URL应使用wss://协议
services:
drone-agent:
image: drone/drone:0.5
command: agent
restart: always
depends_on: [ drone-server ]
volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
environment:
+ DRONE_SERVER=ws://drone-server:8000/ws/broker
DRONE_SECRET=${DRONE_SECRET}
无人机服务器和代理使用共享密钥来验证通信。这应该是您选择的随机字符串,应该保密。
services:
drone-server:
image: drone/drone:0.5
ports: [ 80:8000 ]
volumes: [ ./drone:/var/lib/drone/ ]
restart: always
environment:
- DRONE_OPEN=true
- DRONE_GITHUB=true
- DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
- DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
+ - DRONE_SECRET=${DRONE_SECRET}
drone-agent:
image: drone/drone:0.5
command: agent
restart: always
depends_on: [ drone-server ]
volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
environment:
DRONE_SERVER=ws://drone-server:8000/ws/broker
+ DRONE_SECRET=${DRONE_SECRET}
默认情况下,无人机注册已关闭。此示例允许对已批准的GitHub组织成员的用户进行开放式注册。
services:
drone-server:
image: drone/drone:0.5
ports: [ 80:8000 ]
volumes: [ ./drone:/var/lib/drone/ ]
restart: always
environment:
+ - DRONE_OPEN=true
+ - DRONE_ORGS=dolores,dogpatch
- DRONE_GITHUB=true
- DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
- DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
- DRONE_SECRET=${DRONE_SECRET}