Files
terminal/.github/workflows/docker-next-terminal.yml
T

72 lines
2.5 KiB
YAML

name: Docker next-terminal Build
on:
workflow_dispatch:
push:
tags:
- "v*"
jobs:
DOCKERHUB_next-terminal_Build:
name: Docker next-terminal Build
runs-on: ubuntu-latest
steps:
- name: Get version
id: get_version
run: echo "VERSION=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_OUTPUT
- name: Private Actions Checkout
uses: actions/checkout@v4
- name: Docker Setup QEMU
uses: docker/setup-qemu-action@v3
- name: Docker Setup Buildx
uses: docker/setup-buildx-action@v3
- name: node Setup
uses: actions/setup-node@v4
with:
node-version: '20'
- name: npm install
run: |
cd web
npm install --global yarn
yarn
yarn build
- name: Docker Login
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Docker Aliyun Login
uses: docker/login-action@v3
with:
registry: registry.cn-beijing.aliyuncs.com
username: ${{ secrets.ALI_USERNAME }}
password: ${{ secrets.ALI_PASSWORD }}
- name: Build and push Docker images
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/arm64,linux/amd64
file: Dockerfile
push: true
tags: |
${{ secrets.DOCKERHUB_USERNAME }}/next-terminal:latest
${{ secrets.DOCKERHUB_USERNAME }}/next-terminal:${{ steps.get_version.outputs.VERSION }}
registry.cn-beijing.aliyuncs.com/${{ secrets.DOCKERHUB_USERNAME }}/next-terminal:latest
registry.cn-beijing.aliyuncs.com/${{ secrets.DOCKERHUB_USERNAME }}/next-terminal:${{ steps.get_version.outputs.VERSION }}
cache-from: type=registry,ref=${{ secrets.DOCKERHUB_USERNAME }}/next-terminal:cache
cache-to: type=registry,ref=${{ secrets.DOCKERHUB_USERNAME }}/next-terminal:cache,mode=max
DOCKERHUB_Hub_Description:
needs: [ DOCKERHUB_next-terminal_Build ]
name: Change DockerHub Description
runs-on: ubuntu-latest
steps:
- name: Private Actions Checkout
uses: actions/checkout@v4
- name: Docker Hub Description
uses: peter-evans/dockerhub-description@v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
repository: ${{ secrets.DOCKERHUB_USERNAME }}/next-terminal