Skip to content

ci: Add automatic GHA job to build + push Docker Container on main #30

ci: Add automatic GHA job to build + push Docker Container on main

ci: Add automatic GHA job to build + push Docker Container on main #30

Workflow file for this run

# name: 'Torch-TRT Docker'
# on:
# pull_request:
# types: [opened, synchronize, ready_for_review, review_requested, reopened]
# ##### Adapted from https://docs.github.com/en/actions/publishing-packages/publishing-docker-images
# # Defines two custom environment variables for the workflow. These are used for the Container registry domain, and a name for the Docker image that this workflow builds.
# env:
# REGISTRY: ghcr.io
# IMAGE_NAME: ${{ github.repository }}
# # There is a single job in this workflow. It's configured to run on the latest available version of Ubuntu.
# jobs:
# build-and-push-image:
# runs-on: ubuntu-latest
# # Sets the permissions granted to the `GITHUB_TOKEN` for the actions in this job.
# permissions:
# contents: read
# packages: write
# steps:
# - name: Checkout repository
# uses: actions/checkout@v3
# # Uses the `docker/login-action` action to log in to the Container registry registry using the account and password that will publish the packages. Once published, the packages are scoped to the account defined here.
# - name: Log in to the Container registry
# uses: docker/login-action@v2
# with:
# registry: ${{ env.REGISTRY }}
# username: ${{ github.actor }}
# password: ${{ secrets.GITHUB_TOKEN }}
# - name: Reclaim space
# run: |
# rm -rf /usr/share/dotnet
# rm -rf /opt/ghc
# rm -rf "/usr/local/share/boost"
# rm -rf /usr/local/cuda/cuda-*
# - name: ssh
# uses: appleboy/ssh-action@master
# with:
# host: ${{ secrets.HOST }}
# username: ${{ secrets.USERNAME }}
# password: ${{ secrets.PASSWORD }}
# port: ${{ secrets.PORT }}
# # This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to GitHub Packages.
# # It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository.
# # It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step.
# - name: Build and push Docker image
# uses: docker/build-push-action@v4
# with:
# context: .
# push: true
# tags: torch_tensorrt:main
# file: docker/Dockerfile
# build-args: |
# TENSORRT_VERSION=8.6
# CUDNN_VERSION=8.8
# shm-size: 4g
name: 'Torch-TRT Docker'
on:
pull_request:
types: [opened, synchronize, ready_for_review, review_requested, reopened]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Build the Docker image
run: DOCKER_BUILDKIT=1 docker build --build-arg TENSORRT_VERSION=8.6 --build-arg CUDNN_VERSION=8.8 -f docker/Dockerfile --tag torch_tensorrt_main:$(date +%s) .