【发布时间】:2017-09-08 16:00:56
【问题描述】:
我想使用 drone.io 和 gogs 以便在我的环境中拥有一些 CI 功能。
drone.io (http://docs.drone.io/) 的文档不是最新的,为了启动它我不得不挖掘很多。
我的docker-compose.yml 文件如下:
version: '3'
services:
drone-server:
image: drone/drone:latest
network_mode: "bridge"
volumes:
- "/docker/drone:/var/lib/drone/"
environment:
- "DRONE_OPEN=true"
- "DRONE_HOST=XXX"
- "DRONE_SECRET=XXX"
- "DRONE_GOGS=true"
- "DRONE_GOGS_URL=http://gogs:3000"
- "DRONE_GOGS_GIT_USERNAME=XXX"
- "DRONE_GOGS_GIT_PASSWORD=XXX"
- "DRONE_GOGS_PRIVATE_MODE=true"
external_links:
- "dedigogs_gogs_1:gogs"
drone-agent:
image: drone/agent:latest
network_mode: "bridge"
depends_on:
- drone-server
links:
- drone-server
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
environment:
- "DRONE_SERVER=drone-server:9000"
- "DRONE_HOST=XXX"
- "DRONE_SECRET=XXX"
- "DRONE_GOGS=true"
- "DRONE_GOGS_URL=http://gogs:3000"
- "DRONE_GOGS_GIT_USERNAME=XXX"
- "DRONE_GOGS_GIT_PASSWORD=XXX"
- "DRONE_GOGS_PRIVATE_MODE=true"
external_links:
- "dedigogs_gogs_1:gogs"
(dedigogs_gogs_1 是我的gogs docker 实例)
我可以使用我的gogs 凭据连接到drone。
我可以查看我所有的私有存储库,并为drone.io 启用它们。
但是,在构建提交时,代理(我认为)无法克隆存储库:
+ git init
Initialized empty Git repository in /drone/src/XXX/XXX/XXX/.git/
+ git remote add origin https://XXX/XXX/XXX.git
+ git fetch --no-tags origin +refs/heads/master:
fatal: could not read Username for 'https://XXX': No such device or address
exit status 128
我尝试使用.drone.yml(添加“clone”部分,使用username,netrc.username,...),我也尝试使用环境变量,没有任何工作,我不能drone 为克隆存储库进行身份验证。
有什么想法吗?
【问题讨论】: