Skip to content

Build and push docker image #5

Build and push docker image

Build and push docker image #5

Workflow file for this run

name: Build and push docker image
on:
push:
branches:
- main
jobs:
docker-build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Login to GHCR
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
run: |
repo_owner=$(echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]')
for file in *.dockerfile; do
if [ -f "$file" ]; then
# Extract image name and tag
image_name=$(basename "$file" | sed -E 's/\.dockerfile//; s/-([^-]+)$/:\1/')
# Build and push the image
docker build -t ghcr.io/$repo_owner/$image_name -f "$file" .
docker push ghcr.io/$repo_owner/$image_name
fi
done