Docker MCP Server #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Docker MCP Server | |
| on: | |
| release: | |
| types: [published] | |
| workflow_dispatch: | |
| inputs: | |
| version: | |
| description: 'MCP server version to build (e.g. 0.3.8)' | |
| required: true | |
| jobs: | |
| docker: | |
| name: Build and push MCP server image | |
| if: >- | |
| github.event_name == 'workflow_dispatch' || | |
| startsWith(github.event.release.tag_name, '@transloadit/mcp-server@') | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| packages: write | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Extract version | |
| id: version | |
| run: | | |
| if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then | |
| VERSION="${{ github.event.inputs.version }}" | |
| else | |
| TAG="${{ github.event.release.tag_name }}" | |
| VERSION="${TAG#@transloadit/mcp-server@}" | |
| fi | |
| echo "version=${VERSION}" >> "$GITHUB_OUTPUT" | |
| - uses: docker/setup-buildx-action@v3 | |
| - uses: docker/login-action@v3 | |
| with: | |
| registry: ghcr.io | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - uses: docker/build-push-action@v6 | |
| with: | |
| context: packages/mcp-server | |
| file: packages/mcp-server/Dockerfile | |
| push: true | |
| tags: | | |
| ghcr.io/transloadit/mcp-server:${{ steps.version.outputs.version }} | |
| ghcr.io/transloadit/mcp-server:latest | |
| labels: | | |
| org.opencontainers.image.title=Transloadit MCP Server | |
| org.opencontainers.image.description=Process video, audio, images, and documents with 86+ cloud media processing robots | |
| org.opencontainers.image.source=https://github.com/transloadit/node-sdk | |
| org.opencontainers.image.version=${{ steps.version.outputs.version }} | |
| org.opencontainers.image.licenses=MIT | |
| platforms: linux/amd64,linux/arm64 | |
| cache-from: type=gha | |
| cache-to: type=gha,mode=max |