Github Actions CI自动实践,自动化代码构建,轻松应用发布
2023-11-06 03:17:05
现在,随着 DevOps 文化的不断兴起,持续集成和持续交付已经成为软件开发流程中的重要组成部分。Github Actions CI 正是帮助我们实现这些目标的利器。Github Actions CI 是一个自动化工作流工具,允许我们在 Github 上轻松创建和运行自动化构建、测试和部署工作流。在本文中,我们将详细介绍如何使用 Github Actions CI 流程来实现自动化代码构建,镜像打包,以及上传至 DockerHub 仓库。
- 准备工作
在开始之前,我们需要确保已经安装了 Docker 和 Docker Compose,并拥有一个 DockerHub 账户。同时,我们还需要准备一个 Github 项目,并在项目中创建一个名为 actions
的目录,用于存放 Github Actions 工作流文件。
- 创建 Github Actions 工作流文件
在 actions
目录中,创建一个名为 .github/workflows/ci.yml
的文件,用于定义我们的 Github Actions 工作流。这个文件中的内容类似于如下:
name: CI
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Build and push Docker image
run: |
docker build -t my-image .
docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
docker push my-image
在这个工作流文件中,我们定义了 build
这个 job,它会在 main
分支被 push 时触发。在这个 job 中,我们使用了 actions/checkout@v2
这个 action 来检出代码,然后使用 docker build
和 docker push
命令来构建和发布镜像。
- 设置 DockerHub 凭证
为了让 Github Actions 工作流能够成功地将镜像推送到 DockerHub,我们需要在 Github 中设置 DockerHub 的凭证。为此,我们可以前往 Settings
-> Secrets
-> Actions
-> New repository secret
,然后输入 DOCKERHUB_USERNAME
和 DOCKERHUB_PASSWORD
这两个秘钥,并分别输入 DockerHub 的用户名和密码。
- 触发 Github Actions 工作流
在一切准备就绪后,我们可以通过 push 代码到 main
分支来触发 Github Actions 工作流。当工作流运行完成后,镜像就会被自动构建并推送到 DockerHub 仓库中。
使用 Github Actions CI 流程,我们实现了自动化的代码构建,镜像打包,以及上传至 DockerHub 仓库。这极大地提高了我们的开发效率和应用发布速度。