Compare commits
10
Commits
560a1836ef
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
32f2065446 | ||
|
|
bb01daeb4d | ||
|
|
69591ec230 | ||
|
|
f7ebfffddb | ||
|
|
cdaf343fc0 | ||
|
|
924f9a454f | ||
|
|
1f82f00acc | ||
|
|
4c8ad817c0 | ||
|
|
a3d7f500d1 | ||
|
|
ada6fa74f1 |
@@ -2,6 +2,8 @@ name: docker-node image
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- docker-node/**
|
||||
schedule:
|
||||
- cron: '0 0 * * 0' # 00:00 sáng Chủ nhật (UTC)
|
||||
workflow_dispatch: # Cho phép chạy tay nếu cần
|
||||
@@ -34,11 +36,11 @@ jobs:
|
||||
echo "Building image ${{ env.IMAGE }} for architecture: ${{ matrix.arch }}"
|
||||
|
||||
docker build \
|
||||
-f ${{ env.IMAGE }}.Dockerfile \
|
||||
-f ${{ env.IMAGE }}/Dockerfile \
|
||||
-t ${{ env.IMAGE_BASE }}:${{ env.IMAGE }}-${{ matrix.arch }}-latest \
|
||||
--label "build_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" \
|
||||
--label "commit_sha=${{ github.sha }}" \
|
||||
.
|
||||
${{ env.IMAGE }}
|
||||
|
||||
docker push ${{ env.IMAGE_BASE }}:${{ env.IMAGE }}-${{ matrix.arch }}-latest
|
||||
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
name: node-go image
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- node-go/**
|
||||
schedule:
|
||||
- cron: '0 2 * * 0' # 02:00 sáng Chủ nhật (UTC)
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
IMAGE_REPO: git.thuanle.me/public/node-go
|
||||
IMAGE: node-go
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
matrix:
|
||||
arch:
|
||||
- arm64
|
||||
- amd64
|
||||
runs-on: ${{ matrix.arch }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Login to Docker Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: git.thuanle.me
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Build Docker images
|
||||
run: |
|
||||
echo "Building image ${{ env.IMAGE }} for architecture: ${{ matrix.arch }}"
|
||||
|
||||
docker build \
|
||||
-f ${{ env.IMAGE }}/Dockerfile \
|
||||
-t ${{ env.IMAGE_REPO }}:${{ matrix.arch }}-latest \
|
||||
--label "build_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" \
|
||||
--label "commit_sha=${{ github.sha }}" \
|
||||
${{ env.IMAGE }}
|
||||
|
||||
docker push ${{ env.IMAGE_REPO }}:${{ matrix.arch }}-latest
|
||||
|
||||
amend-manifest:
|
||||
runs-on: linux
|
||||
needs: [build]
|
||||
steps:
|
||||
- name: Login to Docker Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: git.thuanle.me
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Push Docker manifest
|
||||
run: |
|
||||
echo "Delete existing manifest"
|
||||
docker manifest rm ${{ env.IMAGE_REPO }}:latest || true
|
||||
|
||||
echo "Create new manifest"
|
||||
docker manifest create ${{ env.IMAGE_REPO }}:latest \
|
||||
${{ env.IMAGE_REPO }}:amd64-latest \
|
||||
${{ env.IMAGE_REPO }}:arm64-latest
|
||||
|
||||
docker manifest push ${{ env.IMAGE_REPO }}:latest
|
||||
@@ -2,6 +2,8 @@ name: node-python image
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- node-python/**
|
||||
schedule:
|
||||
- cron: '0 1 * * 0' # 01:00 sáng Chủ nhật (UTC)
|
||||
workflow_dispatch: # Cho phép chạy tay nếu cần
|
||||
@@ -34,11 +36,11 @@ jobs:
|
||||
echo "Building image ${{ env.IMAGE }} for architecture: ${{ matrix.arch }}"
|
||||
|
||||
docker build \
|
||||
-f ${{ env.IMAGE }}.Dockerfile \
|
||||
-f ${{ env.IMAGE }}/Dockerfile \
|
||||
-t ${{ env.IMAGE_BASE }}:${{ env.IMAGE }}-${{ matrix.arch }}-latest \
|
||||
--label "build_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" \
|
||||
--label "commit_sha=${{ github.sha }}" \
|
||||
.
|
||||
${{ env.IMAGE }}
|
||||
|
||||
docker push ${{ env.IMAGE_BASE }}:${{ env.IMAGE }}-${{ matrix.arch }}-latest
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ Kho lưu trữ này cung cấp các Docker base image cho nhiều mục đích s
|
||||
|
||||
- **docker-node**
|
||||
- `git.thuanle.me/public/base:docker-node-latest`
|
||||
- Dockerfile: [docker-node/Dockerfile](docker-node/Dockerfile)
|
||||
- Các gói/phần mềm đã cài đặt:
|
||||
- **Node.js v22** kèm theo **npm** và **yarn**
|
||||
- **Docker CLI**
|
||||
@@ -13,11 +14,23 @@ Kho lưu trữ này cung cấp các Docker base image cho nhiều mục đích s
|
||||
|
||||
- **node-python**
|
||||
- `git.thuanle.me/public/base:node-python-latest`
|
||||
- Dockerfile: [node-python/Dockerfile](node-python/Dockerfile)
|
||||
- Các gói/phần mềm đã cài đặt:
|
||||
- **Node.js** kèm theo **npm** và **yarn**
|
||||
- **git**
|
||||
- **python v3.11**
|
||||
|
||||
- **node-go**
|
||||
- `git.thuanle.me/public/node-go:latest`
|
||||
- Dockerfile: [node-go/Dockerfile](node-go/Dockerfile)
|
||||
- Workflow: [.gitea/workflows/node-go.yml](.gitea/workflows/node-go.yml)
|
||||
- Các gói/phần mềm đã cài đặt:
|
||||
- **Node.js** kèm theo **npm** và **yarn**
|
||||
- **git**
|
||||
- **Go 1.26**
|
||||
- Ghi chú:
|
||||
- `GO_VERSION` hiện được giữ ở mức `1.26` và sẽ nâng thủ công khi cần
|
||||
|
||||
## Update
|
||||
|
||||
- Repo được update hàng tuần.
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM node:22-slim
|
||||
FROM node:lts-slim
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
DOCKER_HOST=unix:///var/run/docker.sock
|
||||
@@ -0,0 +1,28 @@
|
||||
FROM node:lts-slim
|
||||
|
||||
ARG GO_VERSION=1.26
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
PATH=/usr/local/go/bin:${PATH}
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends ca-certificates curl git gcc libc6-dev; \
|
||||
arch="$(dpkg --print-architecture)"; \
|
||||
case "${arch}" in \
|
||||
amd64) go_arch='linux-amd64' ;; \
|
||||
arm64) go_arch='linux-arm64' ;; \
|
||||
*) echo "Unsupported architecture: ${arch}" >&2; exit 1 ;; \
|
||||
esac; \
|
||||
case "${GO_VERSION}" in \
|
||||
*.*.*) download_go_version="${GO_VERSION}" ;; \
|
||||
*.*) download_go_version="${GO_VERSION}.0" ;; \
|
||||
*) echo "GO_VERSION must be major.minor or major.minor.patch: ${GO_VERSION}" >&2; exit 1 ;; \
|
||||
esac; \
|
||||
curl -fsSL "https://go.dev/dl/go${download_go_version}.${go_arch}.tar.gz" -o /tmp/go.tgz; \
|
||||
rm -rf /usr/local/go; \
|
||||
tar -C /usr/local -xzf /tmp/go.tgz; \
|
||||
rm -f /tmp/go.tgz; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM node:22-slim
|
||||
FROM node:lts-slim
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
Reference in New Issue
Block a user