docker搭建drone

以下为docker搭建

1. 安装服务端

docker run \
  --volume=/data/drone:/data \
  --env=DRONE_AGENTS_ENABLED=true \
  --env=DRONE_GOGS_SERVER=http://192.168.0.110:3000 \
  --env=DRONE_RPC_SECRET=super-duper-secret \
  --env=DRONE_SERVER_HOST=192.168.0.110:20080 \
  --env=DRONE_SERVER_PROTO=http \
  --env=DRONE_USER_CREATE=root \
  --env=DRONE_GIT_ALWAYS_AUTH=true \
  --env=DRONE_GIT_USERNAME=root \
  --env=DRONE_GIT_PASSWORD=root \
  --publish=20080:80 \
  --restart=always \
  --detach=true \
  --name=drone \
  drone/drone:2

DRONE_GIT_ALWAYS_AUTH,DRONE_GIT_USERNAME,DRONE_GIT_PASSWORD对于非公开的git项目必须配置,否则拉代码的时候会报错。(需要确保配置的拉取代码的账号密码有权限拉取)
其它按对应平台配置,此处使用Gogs作为git管理平台。
启动完成后便可以使用gogs的账号密码进行登录。
DRONE_USER_CREATE将账号设为管理员。
DRONE_GOGS_SERVER:gogs的ip地址
DRONE_SERVER_HOST:drone搭建好后的地址即为你的机器ip+publish中的映射的端口号
以上需要修改成自己的配置。

2. 安装Runner

docker run --detach \
  --env=DRONE_RPC_PROTO=http \
  --env=DRONE_RPC_HOST=192.168.0.110:20080 \
  --env=DRONE_RPC_SECRET=super-duper-secret \
  --publish=23000:3000 \
  --restart always \
  --name runner \
  drone/drone-runner-ssh

DRONE_RPC_HOST:上面搭建好的drone的地址
启动完成后即可。

3. 配置任务
在需要的自动构建的项目根目录下创建.drone.yml文件

kind: pipeline
type: ssh
name: shf-admin

server:
  host: 192.168.0.110
  user: ssh账号
  password: ssh密码

clone:
  depth: 1
  disable: false

steps:
  - name: build
    failure: always
    commands:
      - source /etc/profile
      - yarn install
      - yarn run build
  - name: deploy
    when:
      branch:
        - master
    failure: always
    commands:
      - rm -rf /home/cicd/pages/*
      - mv -f dist/* /home/cicd/pages/

将此文件push后即可进行自动构建。
(注:需要先在drone web控制台中对项目进行配置)

4. 可能遇到的问题

1.xxx: command not found
原因:drone-runner-ssh默认使用sh执行,并非是bash,所以如果你遇到此问题,可以将sh改成从dash改成bash
执行

ls -l `which sh`

可以看到,此时sh指向的是dash
修改

sudo dpkg-reconfigure dash

勾选no
此时再看

ls -l `which sh`

已经是bash了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值