feat: 添加打镜像的action
This commit is contained in:
parent
1aa249edb1
commit
87ba4eb827
|
@ -0,0 +1,61 @@
|
||||||
|
# This is a basic workflow to help you get started with Actions
|
||||||
|
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
# Controls when the action will run.
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
# Allows you to run this workflow manually from the Actions tab
|
||||||
|
# 可以手动触发
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
logLevel:
|
||||||
|
description: 'Log level'
|
||||||
|
required: true
|
||||||
|
default: 'warning'
|
||||||
|
tags:
|
||||||
|
description: 'Test scenario tags'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
buildx:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
-
|
||||||
|
name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Get current date
|
||||||
|
id: date
|
||||||
|
run: echo "::set-output name=today::$(date +'%Y-%m-%d')"
|
||||||
|
-
|
||||||
|
name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v1
|
||||||
|
-
|
||||||
|
name: Set up Docker Buildx
|
||||||
|
id: buildx
|
||||||
|
uses: docker/setup-buildx-action@v1
|
||||||
|
-
|
||||||
|
name: Available platforms
|
||||||
|
run: echo ${{ steps.buildx.outputs.platforms }}
|
||||||
|
-
|
||||||
|
name: Login to DockerHub
|
||||||
|
uses: docker/login-action@v1
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
|
-
|
||||||
|
name: Build and push
|
||||||
|
uses: docker/build-push-action@v2
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: ./Dockerfile
|
||||||
|
# 所需要的体系结构,可以在 Available platforms 步骤中获取所有的可用架构
|
||||||
|
platforms: linux/amd64,linux/arm64/v8
|
||||||
|
# 镜像推送时间
|
||||||
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
|
# 给清单打上多个标签
|
||||||
|
tags: |
|
||||||
|
eryajf/go-ldap-admin-server:${{ steps.date.outputs.today }}
|
||||||
|
eryajf/go-ldap-admin-server:latest
|
|
@ -0,0 +1,16 @@
|
||||||
|
FROM golang:1.17.10 AS builder
|
||||||
|
|
||||||
|
ENV GOPROXY https://goproxy.io
|
||||||
|
|
||||||
|
RUN mkdir /app
|
||||||
|
ADD . /app/
|
||||||
|
WORKDIR /app
|
||||||
|
RUN go build -o go-ldap-admin .
|
||||||
|
|
||||||
|
FROM centos:centos7
|
||||||
|
RUN mkdir /app
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=builder /app/wait .
|
||||||
|
COPY --from=builder /app/ .
|
||||||
|
RUN chmod +x wait go-ldap-admin && yum -y install vim net-tools telnet wget curl && yum clean all
|
||||||
|
CMD ./wait && ./go-ldap-admin
|
Loading…
Reference in New Issue