github actions から github container registry へ docker の image を push する方法を紹介します。
github で リポジトリを作成します。
Dockerfile を用意します。
サンプルとして echo コマンドを実行するだけの Dockerfile を用意しました。
FROM busybox
CMD ["echo", "1"]
github actions の workflow を追加します。
Actions タブから追加するのが楽です。
Dockerfile があると Publish Docker Container の workflow が Suggest されます。
workflow の yaml を作成して commit されると docker image の push が始まります。
git の tag と連動して docker image も tag をつけるように変更してみます。
git の tag が v1.0.0 なら、docker の tag は 1.0.0 になるといった感じです。
まず trigger を tags だけにします。
on:
push:
tags: ["v*.*.*"]
meta step の with に tags を追加します。
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
tags: |
type=semver,pattern={{ version }}
これで OK です。