我正在尝试使用 bitbucket 服务器进行无人机 0.5,它似乎已连接,因为我可以看到我的存储库。但它一直说它还没有任何构建。我将drone.yml 添加到我的仓库中,但什么都没有……我错过了什么吗
1 回答
我注意到你说你:
我将drone.yml 添加到我的仓库中
但是这将是有问题的,因为您必须添加:
.drone.yml
请注意,正确的文件有一个“。” 在它面前。
此外,您应该尝试手动输入授权 url 以让无人机访问您的 bitbucket 帐户(如果没有设置某种 scm,ps 无人机将无法工作)授权 url 的示例是:
https://my.exampleurl.com/authorize
这些类似于您可以在此处找到的相同说明:http ://readme.drone.io/admin/installation-guide/
我经常看到人们发布这样的链接,然后有人会要求他们将链接的内容复制到实际的响应中,所以我将在这里这样做(你知道以防万一链接飞走):
Drone 在临时 Docker 映像中以单个二进制文件的形式分发。Docker 是唯一的依赖项。本指南演示了如何使用 docker-compose 安装 Drone。
与 GitHub 集成的示例 Docker 撰写文件:
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 客户端和密码。授权回调 url 应该匹配 :///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
Drone 代理需要访问主机 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}