Drone CI使用docker插件构建和推送镜像

使用docker插件进行构建和发布镜像

首先,在项目中安装 drone 构建工具,可以通过以下命令进行安装:

$ curl https://downloads.drone.io/cli/latest/drone_linux_amd64.tar.gz \
  | tar zx
$ sudo install -t /usr/local/bin drone

接着,我们需要在项目根目录中创建一个 .drone.yml 文件,并添加以下代码:

kind: pipeline
name: default

steps:
- name: build
  image: plugins/docker
  settings:
    repo: myrepo/myimage
    tags: [ latest, v1.0 ]
    context: ./app
    dockerfile: ./app/Dockerfile
    username:
      from_secret: docker_username
    password:
      from_secret: docker_password
      
secrets:
- name: docker_username 
  value: your_dockerhub_username 
- name: docker_password
  value: your_dockerhub_password

解释一下以上代码:

kind: 定义的 Pipeline 类型。
name: Pipeline 名称,这里设置为默认值 default
steps: 定义步骤列表。
settings/repo: 指定要构建和发布到哪个 Dcoker 仓库和镜像名称。
settings/tags: 相应的镜像标签,用于版本管理。在这里使用了最新版和 v1.0 版本号作为例子。
settings/context: 指定项目所在目录的路径,即包含 Dockerfile 所处的目录。
settings/dockerfile: Dockerfile 文件所处的位置。
settings/username 和 settings/password: Docker hub 的用户名和密码,使用 from_secret 表示从 Drone Secrets 中获取。
secrets: Secrets 存储了私密数据(如远程服务器 SSH 密钥、数据库连接字符串等),它们不会明文地出现在 .drone.yml 中。

最后,启动构建过程,执行以下命令:

$ drone exec

在 Drone 控制台上查看构建状态,如果构建没有出现问题,则说明你已经成功使用 Drone 和 plugins/docker 构建并发布 Docker 镜像了喵~

posted @ 2023-03-10 11:39  wosperry  阅读(1356)  评论(0编辑  收藏  举报