Skip to content

Build and Push GPU Container #338

Build and Push GPU Container

Build and Push GPU Container #338

Workflow file for this run

name: Build and Push GPU Container
on:
release:
types: [created]
push:
branches: [main]
workflow_dispatch:
inputs:
force_push:
type: boolean
description: "Do you want to push image after build?"
default: false
custom_tag:
type: string
description: "Custom tag to use for the image (overrides VERSION)"
default: ""
env:
VERSION: "0.0.0" # Default version, will be overwritten
BASE_IMAGE: "roboflow/roboflow-inference-server-gpu"
DOCKERFILE: "./docker/dockerfiles/Dockerfile.onnx.gpu"
jobs:
docker:
runs-on:
labels: ubuntu-latest
timeout-minutes: 120
permissions:
id-token: write
contents: read
steps:
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: 🛎️ Checkout
uses: actions/checkout@v4
- name: Read version from file
run: echo "VERSION=$(DISABLE_VERSION_CHECK=true python ./inference/core/version.py)" >> $GITHUB_ENV
- name: Determine Image Tags
id: tags
uses: ./.github/actions/determine-tags
with:
custom_tag: ${{ github.event.inputs.custom_tag }}
version: ${{ env.VERSION }}
base_image: ${{ env.BASE_IMAGE }}
- name: Set up Depot CLI
uses: depot/setup-action@v1
- name: Build and Push
uses: depot/build-push-action@v1
with:
push: ${{ github.event_name == 'release' || (github.event.inputs.force_push == 'true') }}
project: grl7ffzxd7
tags: ${{ steps.tags.outputs.image_tags }}
platforms: linux/amd64
file: ${{ env.DOCKERFILE }}