Build and Push Docker Image (Daily) #8
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and Push Docker Image (Daily) | |
on: | |
schedule: | |
- cron: "0 0 * * *" # Schedule the workflow to run daily at midnight (UTC time). Adjust the time if needed. | |
workflow_dispatch: # Manual run trigger | |
inputs: | |
trigger-build: | |
description: 'Trigger a manual build and push' | |
default: 'true' | |
jobs: | |
build_and_push: | |
runs-on: ubuntu-latest | |
steps: | |
# Check out the repository code | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
# Log in to Docker Hub (replace with the appropriate registry if using something else) | |
- name: Log in to Docker Hub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
# Set up Docker Buildx (needed for multi-platform builds) | |
- name: Set up Docker Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v1 | |
# Build and push Docker image for multiple platforms | |
- name: Build and Push Docker Image | |
uses: docker/build-push-action@v2 | |
with: | |
context: WG-Dash/ # Path to the directory containing the Dockerfile (subfolder) | |
push: true | |
tags: noxcis/wg-dashboard:squid-multi-arch | |
platforms: linux/amd64,linux/arm64,linux/arm/v7 |