chore: add docker image

This commit is contained in:
mzz 2023-03-14 01:13:10 +08:00 committed by GitHub
parent 5ba320b45b
commit a7eece0887
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -135,3 +135,48 @@ jobs:
file: ./dae-${{ steps.get_filename.outputs.ASSET_NAME }}.zip*
overwrite: true
tag: ${{ github.ref }}
docker:
runs-on: ubuntu-22.04
steps:
- name: Checkout codebase
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Prepare
id: prep
env:
REF: ${{ github.ref }}
run: |
if [[ "$REF" == "refs/tags/v"* ]]; then
tag=$(git describe --tags $(git rev-list --tags --max-count=1))
tag=${tag:1}
else
tag=$(git log -1 --format="%cd" --date=short | sed s/-//g)
fi
echo "IMAGE=daeuniverse/dae" >> $GITHUB_OUTPUT
echo "TAG=$tag" >> $GITHUB_OUTPUT
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build production image
uses: docker/build-push-action@v4
with:
context: .
builder: ${{ steps.buildx.outputs.name }}
file: Dockerfile
platforms: linux/arm,linux/arm64,linux/amd64
push: true
tags: |
${{ steps.prep.outputs.IMAGE }}:${{ steps.prep.outputs.TAG }}
${{ steps.prep.outputs.IMAGE }}:latest
cache-from: type=gha
cache-to: type=gha,mode=max