container_release2.yml 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. name: "docker: build release containers for large volume"
  2. on:
  3. push:
  4. tags:
  5. - '*'
  6. workflow_dispatch: []
  7. jobs:
  8. build-large-release-container:
  9. runs-on: [ubuntu-latest]
  10. steps:
  11. -
  12. name: Checkout
  13. uses: actions/checkout@v2
  14. -
  15. name: Docker meta
  16. id: docker_meta
  17. uses: docker/metadata-action@v3
  18. with:
  19. images: |
  20. chrislusf/seaweedfs
  21. tags: |
  22. type=ref,event=tag,suffix=_large_disk
  23. flavor: |
  24. latest=false
  25. labels: |
  26. org.opencontainers.image.title=seaweedfs
  27. org.opencontainers.image.description=SeaweedFS is a distributed storage system for blobs, objects, files, and data lake, to store and serve billions of files fast!
  28. org.opencontainers.image.vendor=Chris Lu
  29. -
  30. name: Set up QEMU
  31. uses: docker/setup-qemu-action@v1
  32. -
  33. name: Set up Docker Buildx
  34. uses: docker/setup-buildx-action@v1
  35. -
  36. name: Login to Docker Hub
  37. if: github.event_name != 'pull_request'
  38. uses: docker/login-action@v1
  39. with:
  40. username: ${{ secrets.DOCKER_USERNAME }}
  41. password: ${{ secrets.DOCKER_PASSWORD }}
  42. -
  43. name: Build
  44. uses: docker/build-push-action@v2
  45. with:
  46. context: ./docker
  47. push: ${{ github.event_name != 'pull_request' }}
  48. file: ./docker/Dockerfile.go_build_large
  49. platforms: linux/amd64, linux/arm, linux/arm64, linux/386
  50. tags: ${{ steps.docker_meta.outputs.tags }}
  51. labels: ${{ steps.docker_meta.outputs.labels }}