workflow: add docker build and push job

This commit is contained in:
Shuanglei Tao
2021-01-27 23:54:06 +08:00
parent cea978eb93
commit e5fb0598db
5 changed files with 64 additions and 24 deletions

45
.github/workflows/docker.yml vendored Normal file
View File

@@ -0,0 +1,45 @@
name: docker
on:
push:
branches: master
jobs:
docker:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Install packages
run: |
sudo apt-get update
sudo apt-get install -y autoconf automake build-essential cmake curl file libtool
- name: Cross build amd64/arm64 binary
run: |
for arch in amd64 arm64; do
env BUILD_TARGET=$arch ./scripts/cross-build.sh
cp build/ttyd ttyd.$arch
done
- uses: docker/setup-qemu-action@v1
- uses: docker/setup-buildx-action@v1
- uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_HUB_USER }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}
- name: build/push docker image
uses: docker/build-push-action@v2
with:
context: .
file: ./Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: |
tsl0922/ttyd:latest
- name: build/push docker image (alpine)
uses: docker/build-push-action@v2
with:
context: .
file: ./Dockerfile.alpine
platforms: linux/amd64,linux/arm64
push: true
tags: |
tsl0922/ttyd:alpine