12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- name: "docker: build latest container"
- on:
- push:
- tags:
- - '*'
- workflow_dispatch: {}
- permissions:
- contents: read
- jobs:
- build-latest-container:
- runs-on: [ubuntu-latest]
- steps:
- -
- name: Checkout
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v2
- -
- name: Docker meta
- id: docker_meta
- uses: docker/metadata-action@507c2f2dc502c992ad446e3d7a5dfbe311567a96 # v3
- with:
- images: |
- chrislusf/seaweedfs
- ghcr.io/chrislusf/seaweedfs
- tags: |
- type=raw,value=latest
- labels: |
- org.opencontainers.image.title=seaweedfs
- 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!
- org.opencontainers.image.vendor=Chris Lu
- -
- name: Set up QEMU
- uses: docker/setup-qemu-action@e81a89b1732b9c48d79cd809d8d81d79c4647a18 # v1
- -
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@f03ac48505955848960e80bbb68046aa35c7b9e7 # v1
- with:
- buildkitd-flags: "--debug"
- -
- name: Login to Docker Hub
- if: github.event_name != 'pull_request'
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v1
- with:
- username: ${{ secrets.DOCKER_USERNAME }}
- password: ${{ secrets.DOCKER_PASSWORD }}
- -
- name: Login to GHCR
- if: github.event_name != 'pull_request'
- uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v1
- with:
- registry: ghcr.io
- username: ${{ secrets.GHCR_USERNAME }}
- password: ${{ secrets.GHCR_TOKEN }}
- -
- name: Build
- uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671 # v2
- with:
- context: ./docker
- push: ${{ github.event_name != 'pull_request' }}
- file: ./docker/Dockerfile.go_build
- platforms: linux/amd64, linux/arm, linux/arm64, linux/386
- tags: ${{ steps.docker_meta.outputs.tags }}
- labels: ${{ steps.docker_meta.outputs.labels }}
|