Skip to content

Docker

Docker #32

Workflow file for this run

---
name: Docker
# https://docs.github.com/en/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-ghcrio
on:
workflow_dispatch:
# https://github.blog/changelog/2020-07-06-github-actions-manual-triggers-with-workflow_dispatch/
inputs:
tag:
description: "The Docker Image Tag"
required: false
default: "latest"
type: string
workflow_run:
# https://stackoverflow.com/questions/58457140/dependencies-between-workflows-on-github-actions
workflows:
- "Release"
branches:
- master
types:
- completed
jobs:
build:
env:
DOCKER_REGISTRY: ghcr.io
DOCKER_BUILD_TAG: ghcr.io/llaville/box-manifest:${{ github.event.inputs.tag || 'latest' }}
runs-on: ubuntu-22.04
permissions:
packages: write
steps:
- # https://github.com/actions/checkout
name: Checkout code
uses: actions/checkout@v4
with:
token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}
fetch-depth: 0
- # https://github.com/shivammathur/setup-php
name: Setup PHP runtime
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
- # https://github.com/ramsey/composer-install
name: Install Composer dependencies
uses: ramsey/composer-install@v2
with:
composer-options: "--prefer-dist"
- # https://github.com/docker/setup-qemu-action
name: Set up QEMU
uses: docker/setup-qemu-action@v3
- # https://github.com/docker/setup-buildx-action
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- # https://github.com/docker/login-action
name: Login to DockerHub
uses: docker/login-action@v3
with:
registry: ${{ env.DOCKER_REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- # https://github.com/docker/build-push-action
name: Build and push Docker images
uses: docker/build-push-action@v6
with:
push: true
tags: ${{ env.DOCKER_BUILD_TAG }}