1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

build-push-actionを使って、GitHub Container Registryにイメージをpushしたい

Last updated at Posted at 2020-09-13

Dockerイメージをレジストリに登録する作業を自動化したい場合、build-push-actionというワークフローを利用することが多いと思います。このワークフローを使って、2020/09/03にオープンベータになったGitHub Container Registryにイメージをpushしたい場合は、おおよそ以下のようにすればよいです。

name: Publish Docker image
on: push
jobs:
  publish_image:
    runs-on: ubuntu-latest
    steps:
      - name: Push to GitHub Container Registry
        uses: docker/build-push-action@v1
        with:
          username: ${{ github.actor }}
          password: ${{ secrets.ACCESS_TOKEN }}
          registry: ghcr.io
          repository: example/example

ポイントは次の通りです。

  • registryghcr.ioを指定します。
  • usernameはレポジトリにアクセスできるユーザを指定してください。なおここではワークフロー実行ユーザ名を格納するgithub.actorを利用しています。
  • passwordには、レポジトリへの読み取り・書き込み権限を有するアクセストークン(★)を指定する必要があります。

(★) アクセストークンを作成し、Github Actions内で利用できるようになるまでの手順は以下の通りです。

  1. https://github.com/settings/tokens/new へアクセス。認証が求められる場合がある。
  2. アクセストークン作成画面では、write:packagesread:packagesに最低限チェックを付けて、Genereate Tokenを押下する。必要な場合はほかの権限も付与すること。
  3. 作成したアクセストークンを控えておく
  4. Github Actionsを使うレポジトリに移動。
  5. Settings > Secrets > New Secretの順番に移動。
  6. Secret作成画面では、Name="任意の名前"(上記のサンプルではACCESS_TOKEN)、VALUE="3.で控えておいたアクセストークン"を指定して、Add Secretを押下。
  7. これでワークフロー内で${{ secrets.任意の名前 }}という変数が利用できるようになります。
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?