瀏覽代碼

test to build base images

Stille 3 年之前
父節點
當前提交
386925ad76

+ 57 - 0
.github/workflows/docker-build-release-base-image.yml

@@ -0,0 +1,57 @@
+name: "docker build release base image"
+
+on: 
+  workflow_dispatch:
+    inputs:
+      name:
+        description: 'name'
+        required: true
+        default: 
+      tag:
+        description: 'tag'
+        required: true
+        default: 
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout
+        uses: actions/[email protected]
+
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@v1
+
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+
+      - name: Login Docker Hub
+        uses: docker/login-action@v1 
+        with:
+          username: ${{ secrets.DOCKER_USERNAME_IOIOX }}
+          password: ${{ secrets.DOCKER_PASSWORD_IOIOX }}
+
+      - name: Build and push to docker hub
+        uses: docker/build-push-action@v2
+        with:
+          context: base/${{ github.event.inputs.name }}/${{ github.event.inputs.tag }}
+          platforms: linux/amd64,linux/arm64
+          push: true
+          tags: |
+            ${{ secrets.DOCKER_USERNAME_IOIOX }}/${{ github.event.inputs.name }}:${{ github.event.inputs.tag }}
+
+      - name: Login harbor
+        uses: docker/login-action@v1 
+        with:
+          registry: ${{ secrets.HARBOR_REGISTRY }}
+          username: ${{ secrets.HARBOR_USERNAME }}
+          password: ${{ secrets.HARBOR_PASSWORD }}
+
+      - name: Build and push to harbor
+        uses: docker/build-push-action@v2
+        with:
+          context: base/${{ github.event.inputs.name }}/${{ github.event.inputs.tag }}
+          platforms: linux/amd64,linux/arm64
+          push: true
+          tags: |
+            ${{ secrets.HARBOR_REGISTRY }}/${{ secrets.HARBOR_USER }}/${{ github.event.inputs.name }}:${{ github.event.inputs.tag }}

+ 9 - 0
base/alpine/latest/Dockerfile

@@ -0,0 +1,9 @@
+FROM alpine
+LABEL maintainer="Stille <[email protected]>"
+
+RUN apk add --no-cache bash git curl zip
+
+ENV TZ=Asia/Shanghai
+RUN apk add --no-cache tzdata \
+    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone

+ 8 - 0
base/centos/7/Dockerfile

@@ -0,0 +1,8 @@
+FROM centos:7
+LABEL maintainer="Stille <[email protected]>"
+
+RUN yum -y install wget git zip
+
+ENV TZ=Asia/Shanghai
+RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone

+ 9 - 0
base/node/12-alpine/Dockerfile

@@ -0,0 +1,9 @@
+FROM node:12-alpine
+LABEL maintainer="Stille <[email protected]>"
+
+RUN apk add --no-cache bash git curl zip
+
+ENV TZ=Asia/Shanghai
+RUN apk add --no-cache tzdata \
+    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone

+ 9 - 0
base/node/14-alpine/Dockerfile

@@ -0,0 +1,9 @@
+FROM node:14-alpine
+LABEL maintainer="Stille <[email protected]>"
+
+RUN apk add --no-cache bash git curl zip
+
+ENV TZ=Asia/Shanghai
+RUN apk add --no-cache tzdata \
+    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone

+ 9 - 0
base/node/15-alpine/Dockerfile

@@ -0,0 +1,9 @@
+FROM node:15-alpine
+LABEL maintainer="Stille <[email protected]>"
+
+RUN apk add --no-cache bash git curl zip
+
+ENV TZ=Asia/Shanghai
+RUN apk add --no-cache tzdata \
+    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone

+ 9 - 0
base/node/16-alpine/Dockerfile

@@ -0,0 +1,9 @@
+FROM node:16-alpine
+LABEL maintainer="Stille <[email protected]>"
+
+RUN apk add --no-cache bash git curl zip
+
+ENV TZ=Asia/Shanghai
+RUN apk add --no-cache tzdata \
+    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone

+ 12 - 0
base/ubuntu/latest/Dockerfile

@@ -0,0 +1,12 @@
+FROM ubuntu
+LABEL maintainer="Stille <[email protected]>"
+
+RUN apt-get update
+RUN apt-get install -y wget curl zip git
+
+ENV TZ=Asia/Shanghai
+RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
+    && echo $TZ > /etc/timezone \
+    && apt-get install tzdata \
+    && apt-get clean \
+    && apt-get autoclean