drone + gogs 构建CI/CD

1.下载 gogs drone镜像

2.接下来启动三个server,记得将里面的ip地址改成本机的。

2.1启动gogs server

docker run --name=gogs -p 10022:22 -p 3000:3000 -v /tmp/gogs:/data gogs/gogs

 2.2 drone的dockerdocker-compose.yml

version: '2'

services:
  drone-server:
    image: drone/drone:0.8
    ports:
      - 8000:8000
      - 9000:9000
    volumes:
      ## 主要是映射数据库文件,默认使用sqllite
      - /tmp/drone:/var/lib/drone/
    environment:
      - DRONE_OPEN=true
      ##直接配置192.168.2.100:9000 会报错
      - DRONE_HOST=http://192.168.2.100:9000
      - DRONE_GOGS=true
      - DRONE_GOGS_URL=http://192.168.2.100:3000
      - DRONE_SECRET=test
  drone-agent:
    image: drone/agent:0.8
    command: agent
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    depends_on:
      - drone-server
    environment:
      ## 此处不需要加http://
      - DRONE_SERVER=192.168.2.100:9000
      - DRONE_SECRET=test
      - DRONE_DEBUG=true

3.访问 gogs  

http://192.168.2.100:3000,配置仓库及注册登陆,添加项目。

添加

.drone.yml

 登陆 drone

http://localhost:8000,使用gogs的用户名与密码登陆。登陆进去会看到gogs中的项目。

 

开启web钩子

配置gogs web钩子

正常情况下,开启了drone的web钩子按钮,gogs中的web钩子会自动创建,检查地址是否正确,可能会存在IP地址为localhost问题。

根据实际需要修改配置,点击更新web钩子使配置生效,点击测试推送会发出一个web钩子请求,此时可以得到web钩子是不是通的。

猜你喜欢

转载自my.oschina.net/u/1867229/blog/1610103