docker+drone+go自动部署

1、安装mysql自行安装
2、安装Gogs自行安装
3、安装drone/drone

docker run -d\
  --volume=/var/lib/drone:/data \
  --env=DRONE_DEBUG=true\
  --env=DRONE_LOGS_TRACE=true\
  --env=DRONE_LOGS_DEBUG=true\
  --env=DRONE_LOGS_PRETTY=true\
  --env=DRONE_AGENTS_ENABLED=true \
  --env=DRONE_GIT_ALWAYS_AUTH=true \
  --env=DRONE_RPC_SECRET=bca6ae9c4bc3022eb59f19642167068b \
  --env=DRONE_SERVER_HOST=192.168.0.21:10080 \ #Drone启动路径
  --env=DRONE_SERVER_PROTO=http \
  --env=DRONE_GOGS_SERVER=http://192.168.0.21:3000 \ #Gogs启动路径
  --env=DRONE_USER_CREATE=username:wangjinzhi,admin:true \
##### 注意 这里的username一定要对应gogs的username
  --publish=10080:80 \
  --publish=10443:443 \
  --restart=always \
  --detach=false \
  --name=drone \
  drone/drone

4、安装drone-runner-ssh

drone-runner-ssh 命令

docker run -d \
  -e DRONE_RPC_PROTO=http \
  -e DRONE_RPC_HOST=192.168.0.21:10080 \  #Drone启动路径
  -e DRONE_RPC_SECRET=bca6ae9c4bc3022eb59f19642167068b \
  -e DRONE_DEBUG=true \
  -p 10081:3000 \
  --restart always \
  --name ssh-runner \
  drone/drone-runner-ssh

5、安装drone-runner-docker

drone-runner-docker 命令

docker run -d \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e DRONE_RPC_PROTO=http \
  -e DRONE_RPC_HOST=192.168.10.251:10080 \ #Drone启动路径
  -e DRONE_RPC_SECRET=bca6ae9c4bc3022eb59f19642167068b \
  -e DRONE_RUNNER_CAPACITY=2 \
  -e DRONE_RUNNER_NAME=docker-runner \
  -e DRONE_DEBUG=true \
  -p 10082:3000 \
  --restart always \
  --name docker-runner \
  drone/drone-runner-docker

6、.drome.yml

kind: pipeline
type: ssh # 使用SSH
name: default
server:
  host: 192.168.0.21
  user: root
  password: Elang111111
# 自定义clone
clone:
  disable: true
trigger:
  branch:
    - master
  event:
    - push
steps:
  - name: clone
    commands:
      - rm -rf /data/www/wwwroot/src/demo1
      - cd /data/www/wwwroot/src/
      - git clone http://192.168.0.21:3000/wangjinzhi/demo1.git
  - name: build
    environment:
      CGO_ENABLED: 0 # 使用alpine镜像需禁用CGO 或使用 -tags netgo, 实现静态编译
      GO111MODULE: on
      GOPROXY: https://goproxy.cn
    commands:
      - cd /data/www/wwwroot/src/demo1
      - go mod tidy
      - kill -9 $(lsof -i:8000 -t)  #杀掉对应端口进程
      - go run main.go

8、drone设置,更新项目
在这里插入图片描述
9、一定要用管理员登陆
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值