首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安装drone记录

安装drone记录

作者头像
无道
发布2021-06-10 16:01:50
8460
发布2021-06-10 16:01:50
举报
文章被收录于专栏:无道编程无道编程无道编程

安装

version: '3'
services:
  drone-server:
    restart: always
    image: drone/drone:1
    ports:
      - "10003:80"
    volumes:
      - ./data/drone/:/var/lib/drone/
      - ./data/data/:/data/
    environment:
      - DRONE_GITEA_SERVER=https://gitea服务器地址
      - DRONE_GITEA_CLIENT_ID=gitea生成的OAuth2客户端ID
      - DRONE_GITEA_CLIENT_SECRET=gitea生成的OAuth2客户端密钥
      - DRONE_SERVER_HOST=drone服务器地址
      - DRONE_SERVER_PROTO=https
      - DRONE_RPC_SECRET=自定义的Drone与runner通信密钥
  drone-runner-docker:
    restart: always
    image: drone/drone-runner-docker:1
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - DRONE_RPC_PROTO=http
      - DRONE_RPC_HOST=drone-server
      - DRONE_RPC_SECRET=自定义的Drone与runner通信密钥

生成随机密码:

openssl rand -hex 16

ssh远程执行

- name: deploy
  image: appleboy/drone-ssh
  host: 127.0.0.1
  username: root
  password: Root密码
  port: 22
  script:
  - docker stop demo
  - docker rm demo
  - docker login --username=用户名 -p=密码 registry.cn-hangzhou.aliyuncs.com
  - docker pull registry.cn-hangzhou.aliyuncs.com/demo/demo:latest
  - docker run -d --name demo -p 80:80  registry.cn-hangzhou.aliyuncs.com/demo/demo:latest
  - docker rmi $(docker images | grep "none" | awk '{print $3}')

Docker编译

- name: build
  image: plugins/docker
  settings:
    username: 仓库用户名
    password: 仓库密码
    registry: registry.cn-hangzhou.aliyuncs.com
    repo: registry.cn-hangzhou.aliyuncs.com/demo/demo  #仓库完整路径
    context: src/
    dockerfile: src/Dockerfile  #Dockerfile相对Git根目录地址
    tags: latest

Golang

type: docker
kind: pipeline
name: build-go-disk

workspace:
  base: /go
  path: code

environment:
  APP_NAME: go_disk

steps:
  - name: build
    image: golang:1.16
    environment:
      GONOPROXY: gitee.com
      GOPRIVATE: gitee.com
      GONOSUMDB: gitee.com
    commands:
      - export GO111MODULE=on
      - export GOPROXY=https://goproxy.cn
      - go mod tidy
      - echo $(pwd)
      - export GOOS=linux
      - export GOARCH=arm64
      - go build -o $APP_NAME main.go
      - ls -la
      - chmod +x $APP_NAME
  - name: scp files
    image: appleboy/drone-scp
    settings:
      host: xxx
      port: 111
      username:
        from_secret: ssh_user
      password:
        from_secret: ssh_pass
      command_timeout: 2m
      target: /code/go/search2
      source:
        - go_disk
        - go.mod
  - name: restart
    image: appleboy/drone-ssh
    settings:
      host: xxx
      port: 111
      username:
        from_secret: ssh_user
      password:
        from_secret: ssh_pass
      command_timeout: 2m
      script:
        - cd /code/go/go_disk
        - app stop
        - sleep 1
        - app start

Vue配置

kind: pipeline
type: docker
name: build-template

workspace:
  base: /node
  path: code

steps:
  - name: build
    image: node:12.18.2
    commands:
      # 出于一些不可告人的原因使用了淘宝npm镜像 你不要笑
      - npm config set registry https://registry.npm.taobao.org
      - npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/
      - npm config set electron_mirror https://npm.taobao.org/mirrors/electron/
      - npm i
      - npm run build
      - pwd
      - ls -la
  - name: scp files
    image: appleboy/drone-scp
    settings:
      host: xxx
      port: 222
      username:
        from_secret: ssh_user
      password:
        from_secret: ssh_pass
      command_timeout: 2m
      target: /usr/local/nginx/html/template.misiai.com
      source: dist/*
  - name: move
    image: appleboy/drone-ssh
    settings:
      host: xxx
      port: 222
      username:
        from_secret: ssh_user
      password:
        from_secret: ssh_pass
      command_timeout: 2m
      script:
        - cd /usr/local/nginx/html/template.misiai.com
        - \cp -rf ./dist/* ./
        - rm -rf ./dist/
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-06-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装
  • ssh远程执行
  • Docker编译
  • Golang
  • Vue配置
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档