diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..cdf416c --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,48 @@ +name: Build Docker +on: + push: + tags: + - "*" + +jobs: + docker_build: + name: Build and Push Docker Image + runs-on: ubuntu-latest + steps: + - name: Checkout 🛎️ + uses: actions/checkout@v2 + - name: Extract Tag Name 🕵️ + id: tag-name + uses: olegtarasov/get-tag@v2.1 + - name: Install QEMU 🖥️ + uses: docker/setup-qemu-action@v1 + - name: Install Docker 🐋 + uses: docker/setup-buildx-action@v1 + - name: Login to Docker Hub 🐳 + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_PASSWORD }} + - name: Login to Quay 🎩 + uses: docker/login-action@v1 + with: + registry: quay.io + username: ${{ secrets.QUAY_USERNAME }} + password: ${{ secrets.QUAY_PASSWORD }} + - name: Login to GitHub 🐙 + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Build and Push 🏭 + uses: docker/build-push-action@v2 + with: + push: true + tags: | + millironx/juliapro:latest + millironx/juliapro:${{ steps.tag-name.outputs.tag }} + quay.io/millironx/juliapro:latest + quay.io/millironx/juliapro:${{ steps.tag-name.outputs.tag }} + ghcr.io/millironx/juliapro:latest + ghcr.io/millironx/juliapro:${{ steps.tag-name.outputs.tag }}