初探 Github Actions 推送 Docker 镜像到 Docker Hub

前言

目前 Docker Hub 上普通用户已经不能自动构建了,于是想通过 Github Actions 来实现打包并推送到 Docker Hub

实现

第一步

第一步先在项目下建一个 yml 文件,路径:.github/workflows/push2hub.yml

内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
name: Publish Docker image
on:
push:
branches:
- master
jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v2
- name: Log in to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Push to Docker Hub
uses: docker/build-push-action@v2
with:
push: true
tags: jakehu/scripts:latest

上面 Yaml 的功能是,在每一次推送到 Master 分支上的时候,就将项目推送到 Docker Hub 上的 jakehu 用户下的 scripts 仓库里的 latest Tag

第二步

第二步需要在 github 上设置 DOCKER_USERNAMEDOCKER_PASSWORD 两个变量
UMJEbb

第三步

第三步只需要对 Master 分支进行推送即可,然后我们就能在 Actions 里面看到对应的流水线信息
kCVfE8


Github Actions 文档