container_release2.yml 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. name: "docker: build release containers for large volume"
  2. on:
  3. push:
  4. tags:
  5. - '*'
  6. workflow_dispatch: {}
  7. permissions:
  8. contents: read
  9. jobs:
  10. build-large-release-container:
  11. runs-on: [ubuntu-latest]
  12. steps:
  13. -
  14. name: Checkout
  15. uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v2
  16. -
  17. name: Docker meta
  18. id: docker_meta
  19. uses: docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934 # v3
  20. with:
  21. images: |
  22. chrislusf/seaweedfs
  23. tags: |
  24. type=ref,event=tag,suffix=_large_disk
  25. flavor: |
  26. latest=false
  27. labels: |
  28. org.opencontainers.image.title=seaweedfs
  29. 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!
  30. org.opencontainers.image.vendor=Chris Lu
  31. -
  32. name: Set up QEMU
  33. uses: docker/setup-qemu-action@68827325e0b33c7199eb31dd4e31fbe9023e06e3 # v1
  34. -
  35. name: Set up Docker Buildx
  36. uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v1
  37. -
  38. name: Login to Docker Hub
  39. if: github.event_name != 'pull_request'
  40. uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v1
  41. with:
  42. username: ${{ secrets.DOCKER_USERNAME }}
  43. password: ${{ secrets.DOCKER_PASSWORD }}
  44. -
  45. name: Build
  46. uses: docker/build-push-action@0565240e2d4ab88bba5387d719585280857ece09 # v2
  47. with:
  48. context: ./docker
  49. push: ${{ github.event_name != 'pull_request' }}
  50. file: ./docker/Dockerfile.go_build
  51. build-args: TAGS=5BytesOffset
  52. platforms: linux/amd64, linux/arm, linux/arm64, linux/386
  53. tags: ${{ steps.docker_meta.outputs.tags }}
  54. labels: ${{ steps.docker_meta.outputs.labels }}