搭建gitea CICD

假设我当前的服务器ip为1.1.1.1,后面可以改成自己的云服务器ip,以下文档都是部署在同一服务器内,记得开放防火墙端口

安装容器

docker pull gitea/gitea
docker pull drone/drone:2
docker pull drone/drone-runner-docker:1

运行gitea容器

docker run -d --privileged=true --restart=always --name=gitea -p 7060:22 -p 7070:3000 -v /home/gitea:/data gitea/gitea:latest

访问http://1.1.1.1:7070,进行以下配置

1.数据库配置自行填写
2.一般配置,建议只修改站点名称,其他的不要修改
3.可选配置,点击管理员账号配置,配置管理员的账号
4.点击立即安装,在当前页面等待安装完成

运行drone容器

1.前提

创建Gitea oauth 客户端 ID和 Gitea oauth 客户端密钥
在这里插入图片描述

在这里插入图片描述
获取hex_value
在命令行中执行 openssl rand -hex 16,假设输出值为hex_value

openssl rand -hex 16

运行drone容器

参数说明
DRONE_GITEA_CLIENT_ID 是 Gitea oauth 客户端 ID
DRONE_GITEA_CLIENT_SECRET 是Gitea oauth 客户端密钥
DRONE_RPC_SECRET 是上文说的hex_value

docker  run  -v  /home/drone:/data  --env=DRONE_USER_CREATE=username:gitea管理员账号称,machine:false,admin:true,token:c3d55b20f048d1b3f86862ad156ffbeb580bac91 --env=DRONE_GITEA_SERVER=http://1.1.1.1:7070  --env=DRONE_GITEA_CLIENT_ID=Gitea oauth 客户端 ID  --env=DRONE_GITEA_CLIENT_SECRET=Gitea oauth 客户端密钥 --env=DRONE_RPC_SECRET=hex_value --env=DRONE_SERVER_HOST=1.1.1.1:9010  --env=DRONE_SERVER_PROTO=http  --publish=9010:80  --publish=9020:443  --restart=always  --detach=true --name=drone   drone/drone:2

运行drone-runner-docker容器

docker run -d  -e DRONE_RPC_PROTO=http  -e DRONE_RPC_HOST=1.1.1.1:9010  -v /var/run/docker.sock:/var/run/docker.sock -e DRONE_RPC_SECRET=hex_value -e DRONE_RUNNER_CAPACITY=2  -e DRONE_RUNNER_NAME=drone-runner -p 9040:3000 --restart=always --name=runner --link=drone:drone drone/drone-runner-docker:1

.drone.yml

kind: pipeline
type: docker
name: demo

trigger:
  ref:
    - refs/tags/**

steps:
  - name: build
    image: node:14.17.0
    commands:
      - npm i
      - npm run build

  - name: drone-scp
    image: appleboy/drone-scp
    settings:
      host:
        from_secret: host
      username:
        from_secret: username
      password:
        from_secret: password
      port: 22
      target: /custom_front
      source:
        - build
      rm: true

  - name: drone-ssh
    image: appleboy/drone-ssh
    settings:
      host:
        from_secret: host
      username:
        from_secret: username
      password:
        from_secret: password
      port: 22
      script:
        docker restart nginx

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值