写点什么

Drone CI 部署

作者:流火
  • 2023-04-07
    北京
  • 本文字数:1557 字

    阅读完需:约 5 分钟

Drone 中文文档 | Drone CI 中文文档

1.设置 GITEA 授权 OAuth2


注意:重定向地址为 DRONE 地址 后面 /login 不能少 否则提示认证失败

2.docker-compose 文件

version: "3"networks:  default:    external:      #使用 现有网络      name: sczz-bridgeservices:  #drone-server:它是一个守护进程应用并且拥有Web管理界面。它通过Webhook对接Git Server。  #解析Git Repository根目录下的.drone.yml文件,并以轮询的形态查找需要执行的Pipelines,路由并管理Runners  drone-server-sczz:    # 构建所使用的镜像    image: drone/drone:2.9    container_name: drone-server-sczz    environment:        #drone      - TZ=Asia/Shanghai        # 创建管理员账户,这里对应为gitee的用户名      - DRONE_USER_CREATE=username:drone,admin:true      - DRONE_LOGS_TRACE=true       - DRONE_GITEA_SKIP_VERIFY=false        # gitea      - DRONE_GITEA_SERVER=http://192.168.45.2:3002        # Gitee OAuth2客户端ID        # - DRONE_GITEA_CLI(上面的Client ID值)      - DRONE_GITEA_CLIENT_ID=3859512a-f1c0-4f88-9b48-5d048bef0d10        # Gitee OAuth2客户端密钥(上面的Client Secret值)      - DRONE_GITEA_CLIENT_SECRET=76gdPunNGu3hEeOpYVsaeAd-GyZ0rgIvGzggLpuidIQ=        # 通信- drone的共享密钥      - DRONE_RPC_SECRET=183c3d6179cb3d5a5efdf89e37d1e9d4        # 数据库      - DRONE_DATABASE_DRIVER=mysql      - DRONE_DATABASE_DATASOURCE=drone:drone@tcp(mysql-sczz:3306)/drone?parseTime=true        # drone 地址        # 外部协议方案根据你的域名判断是http还是https(ip加端口是http)      - DRONE_SERVER_PROTO=http      - DRONE_SERVER_HOST=192.168.45.2:8880    volumes:      - /volume1/docker/drone-sczz:/data      - /var/run/docker.sock:/var/run/docker.sock    ports:      - 8880:80      - 8443:443  # drone-runner Drone Pipeline处理执行器,一个单独的守护进程,会轮询 Server,获取需要执行的流水线任务,之后执行      drone-runner-sczz:        # 容器名称        container_name: drone-runner-sczz        image: drone/drone-runner-docker:1.8.3        # 依赖的服务        depends_on:            - drone-server-sczz        volumes:            - /var/run/docker.sock:/var/run/docker.sock        environment:            - TZ=Asia/Shanghai            # 用于连接到Drone服务器的协议。该值必须是http或https            - DRONE_RPC_PROTO=http             # 用于连接到Drone服务器的主机名            - DRONE_RPC_HOST=192.168.45.2:8880            - DRONE_RPC_SECRET=183c3d6179cb3d5a5efdf89e37d1e9d4            # 限制运行程序可以执行的并发管道数            - DRONE_RUNNER_CAPACITY=2            - DRONE_RUNNER_NAME=drone-runner-sczz            - DRONE_DEBUG=true # 调试相关,部署的时候建议先打开            - DRONE_LOGS_DEBUG=true # 调试相关,部署的时候建议先打开            - DRONE_LOGS_TRACE=true # 调试相关,部署的时候建议先打开
复制代码

DRONE_GITEA_CLIENT_ID=gitea 中 OAuth2 授权信息中的 客户端 ID

DRONE_GITEA_CLIENT_SECRET=gitea 中 OAuth2 授权信息中的 客户端密码

DRONE_RPC_SECRET:用于 drone-server 与 drone-runner 通信使用

使用 以下命令生成即可

 openssl rand -hex 16
复制代码

3.启动 drone

#启动docker-compose up -d#关闭docker-compose down
复制代码

4.drone 设置

初级登录激活后

设置 .drone.yml 配置文件地址


测试推送

生成构建

可以查看构建过程,途中蓝色按钮可以手动构建。

用户头像

流火

关注

还未添加个人签名 2018-01-31 加入

还未添加个人简介

评论

发布
暂无评论
Drone CI 部署_流火_InfoQ写作社区