跳到主要内容

文档yml简单展示

本站点就是通过之前介绍的方案搭建并部署的, 所以这边就见到那展示一下 .drone.yml 文件的内容, 该文件是 Drone CI 的配置文件, 用于定义 CI/CD 流水线

一般来说正常使用的时候只要关注下面高亮的部分即可, 其他细节的部分基本上是固定的

# 基础配置,开头基本上都这样写
kind: pipeline
type: docker
name: default

# 克隆配置,跳过证书验证
clone:
skip_verify: true

# 工作流配置, 主要就是定义执行的步骤
steps:
# 第一步就是打包(实际上在此之前还有个clone,但是clone是默认的,所以在没有特殊需求的情况下一般直接省略)
- name: pack
# 设定只在mian分支上执行
when:
branch:
- main
# 使用docker镜像进行打包操作, 也是固定搭配
image: docker:dind
# 设定后续使用的环境变量
environment:
IMAGE: collapsenav-dotnet-tool-doc
# 挂载, 基本上也是固定搭配
volumes:
- name: dockersock
path: /var/run/docker.sock
# 具体执行的命令, 这边的步骤是打包, 所以直接执行打包命令即可
commands:
- docker build -t $IMAGE .
- name: push
when:
branch:
- main
image: docker:dind
environment:
IMAGE: collapsenav-dotnet-tool-doc
# 这边的环境变量是从drone的secret中获取, 可以在drone里面单独设置, 这边是用于登录私有化的docker仓库
DOCKERUSER:
from_secret: dockeruser
DOCKERPWD:
from_secret: dockerpwd
volumes:
- name: dockersock
path: /var/run/docker.sock
commands:
- export datetag=$(date +%Y-%m-%d-%H-%M)
- export dockerorigin=docker.collapsenav.cn
- docker login $dockerorigin -u $DOCKERUSER -p $DOCKERPWD
- docker tag $IMAGE $dockerorigin/doc/$IMAGE
- docker tag $IMAGE $dockerorigin/doc/$IMAGE:$datetag
- docker push $dockerorigin/doc/$IMAGE
- docker push $dockerorigin/doc/$IMAGE:$datetag
# 也是固定配置了, 用于挂载docker的sock
volumes:
- name: dockersock
host:
path: /var/run/docker.sock