🔧 Update configuration files 🔧

Dockerfile
dockerfs/
.gitea/workflows/docker.yaml
.gitea/workflows/publish.yaml
.github/workflows/docker.yaml
.github/workflows/publish.yaml
README.md
rootfs/root/docker/setup/00-init.sh
rootfs/root/docker/setup/01-system.sh
rootfs/root/docker/setup/02-packages.sh
rootfs/root/docker/setup/03-files.sh
rootfs/root/docker/setup/04-users.sh
rootfs/root/docker/setup/05-custom.sh
rootfs/root/docker/setup/06-post.sh
rootfs/root/docker/setup/07-cleanup.sh
rootfs/usr/local/bin/entrypoint.sh
rootfs/usr/local/bin/pkmgr
rootfs/usr/local/etc/docker/functions/entrypoint.sh
rootfs/usr/local/share/template-files/config/env/default.sample
rootfs/usr/local/share/template-files/config/env/examples/00-directory.sh
rootfs/usr/local/share/template-files/config/env/examples/addresses.sh
rootfs/usr/local/share/template-files/config/env/examples/certbot.sh
rootfs/usr/local/share/template-files/config/env/examples/couchdb.sh
rootfs/usr/local/share/template-files/config/env/examples/dockerd.sh
rootfs/usr/local/share/template-files/config/env/examples/global.sh
rootfs/usr/local/share/template-files/config/env/examples/healthcheck.sh
rootfs/usr/local/share/template-files/config/env/examples/mariadb.sh
rootfs/usr/local/share/template-files/config/env/examples/mongodb.sh
rootfs/usr/local/share/template-files/config/env/examples/networking.sh
rootfs/usr/local/share/template-files/config/env/examples/other.sh
rootfs/usr/local/share/template-files/config/env/examples/php.sh
rootfs/usr/local/share/template-files/config/env/examples/postgres.sh
rootfs/usr/local/share/template-files/config/env/examples/redis.sh
rootfs/usr/local/share/template-files/config/env/examples/services.sh
rootfs/usr/local/share/template-files/config/env/examples/ssl.sh
rootfs/usr/local/share/template-files/config/env/examples/supabase.sh
rootfs/usr/local/share/template-files/config/env/examples/webservers.sh
rootfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh
rootfs/usr/local/share/template-files/config/.gitkeep
rootfs/usr/local/share/template-files/data/.gitkeep
rootfs/usr/local/share/template-files/defaults/.gitkeep
This commit is contained in:
casjay
2026-01-15 23:46:36 -05:00
parent 7c2eb91c01
commit 81302e6f4d
40 changed files with 257 additions and 66 deletions

86
.github/workflows/docker.yaml vendored Normal file
View File

@@ -0,0 +1,86 @@
name: archlinux
on:
push:
branches:
- main
- master
pull_request:
schedule:
- cron: '0 2 * * 1'
workflow_dispatch:
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Get Meta
id: meta
run: |
echo "BUILD_DATE=$(date +'%Y%m%d%H%M')" >> $GITHUB_OUTPUT
echo "DATE_TAG=$(date +'%y%m')" >> $GITHUB_OUTPUT
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
platforms: |
linux/amd64
linux/arm64
push: ${{ github.event_name != 'pull_request' }}
provenance: false
build-args: |
IMAGE_NAME=archlinux
IMAGE_VERSION=latest
IMAGE_REPO=${{ github.repository }}
PHP_SERVER=archlinux
BUILD_DATE=${{ steps.meta.outputs.BUILD_DATE }}
BUILD_VERSION=${{ steps.meta.outputs.BUILD_DATE }}
PULL_URL=ghcr.io/dockersrc/archlinux
DISTRO_VERSION=base
CONTAINER_VERSION=USE_DATE
TIMEZONE=America/New_York
LANGUAGE=en_US.UTF-8
PHP_VERSION=system
NODE_VERSION=system
NODE_MANAGER=system
SERVICE_PORT=
EXPOSE_PORTS=
WWW_ROOT_DIR=/usr/local/share/httpd/default
DEFAULT_FILE_DIR=/usr/local/share/template-files
DEFAULT_DATA_DIR=/usr/local/share/template-files/data
DEFAULT_CONF_DIR=/usr/local/share/template-files/config
DEFAULT_TEMPLATE_DIR=/usr/local/share/template-files/defaults
annotations: |
org.opencontainers.image.title=${{ github.repository }}
org.opencontainers.image.description=Containerized version of ${{ github.repository }}
org.opencontainers.image.vendor=CasjaysDev
org.opencontainers.image.authors=CasjaysDev <docker-admin@casjaysdev.pro>
org.opencontainers.image.url=https://github.com/${{ github.repository }}
org.opencontainers.image.source=https://github.com/${{ github.repository }}
org.opencontainers.image.version=latest
org.opencontainers.image.revision=${{ github.sha }}
org.opencontainers.image.created=${{ github.event.head_commit.timestamp }}
tags: |
ghcr.io/${{ github.repository }}:latest
ghcr.io/${{ github.repository }}:${{ steps.meta.outputs.DATE_TAG }}

View File

@@ -1,17 +1,21 @@
name: archlinux-base
name: .-base
on:
push:
branches:
- main
- master
pull_request:
schedule:
- cron: '0 6 * * 1' # Runs every Monday at 6 AM UTC
- cron: '0 2 2 * *'
workflow_dispatch:
jobs:
archlinux-latest:
build-and-push:
runs-on: ubuntu-latest
permissions:
packages: write
contents: read
attestations: write
id-token: write
packages: write
steps:
- name: Checkout
uses: actions/checkout@v4
@@ -24,56 +28,60 @@ jobs:
- name: Get Meta
id: meta
env:
HUB: ghcr.io
ORG: dockersrc
TAG: ${{ vars.DOCKER_TAG }}
run: |
echo "DOCKER_HUB=$([ -n "$HUB" ] && echo $HUB || echo "ghcr.io")" >> $GITHUB_OUTPUT
echo "REPO_VERSION=$(git describe --tags --always | sed 's/^v//')" >> $GITHUB_OUTPUT
echo "DOCKER_TAG=$([ -n "$TAG" ] && echo $TAG || echo "base")" >> $GITHUB_OUTPUT
echo "DOCKER_ORG=$([ -n "$ORG" ] && echo "$ORG" || echo "dockersrc")" >> $GITHUB_OUTPUT
echo "REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}' | sed 's|^docker-||g')" >> $GITHUB_OUTPUT
echo "IMAGE_NAME=ghcr.io/${{ github.repository }}" >> $GITHUB_OUTPUT
echo "BUILD_DATE=$(date +'%Y%m%d%H%M')" >> $GITHUB_OUTPUT
echo "DATE_TAG=$(date +'%y%m')" >> $GITHUB_OUTPUT
echo "IMAGE_REPO=${GITHUB_REPOSITORY}" >> $GITHUB_OUTPUT
# Login to Docker Hub to avoid rate limits
- name: Login to Docker Hub
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
# Login to GitHub Container Registry
- name: Login to GitHub Container Registry
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract metadata
id: docker-meta
uses: docker/metadata-action@v5
with:
images: ${{ steps.meta.outputs.IMAGE_NAME }}
tags: |
type=ref,event=branch
type=ref,event=pr
type=raw,value=${{ steps.meta.outputs.DOCKER_TAG }}
type=raw,value=latest,enable={{is_default_branch}}
type=schedule,pattern={{date 'YYYYMMDD'}}
- name: Build and push Docker image
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile.base
context: ./.
file: ././Dockerfile.base
platforms: |
linux/amd64
linux/arm64
push: ${{ github.event_name != 'pull_request' }}
platforms: linux/amd64,linux/arm64
tags: ${{ steps.docker-meta.outputs.tags }}
labels: ${{ steps.docker-meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max
provenance: false
build-args: |
IMAGE_NAME=.
IMAGE_VERSION=latest
IMAGE_REPO=${{ steps.meta.outputs.IMAGE_REPO }}
PHP_SERVER=.
BUILD_DATE=${{ steps.meta.outputs.BUILD_DATE }}
BUILD_VERSION=${{ steps.meta.outputs.BUILD_DATE }}
PULL_URL=.
DISTRO_VERSION=latest
CONTAINER_VERSION=
TIMEZONE=America/New_York
LANGUAGE=en_US.UTF-8
PHP_VERSION=system
NODE_VERSION=system
NODE_MANAGER=system
SERVICE_PORT=
EXPOSE_PORTS=
WWW_ROOT_DIR=/usr/local/share/httpd/default
DEFAULT_FILE_DIR=/usr/local/share/template-files
DEFAULT_DATA_DIR=/usr/local/share/template-files/data
DEFAULT_CONF_DIR=/usr/local/share/template-files/config
DEFAULT_TEMPLATE_DIR=/usr/local/share/template-files/defaults
annotations: |
org.opencontainers.image.title=${{ steps.meta.outputs.IMAGE_REPO }}
org.opencontainers.image.description=Containerized version of ${{ steps.meta.outputs.IMAGE_REPO }}
org.opencontainers.image.vendor=CasjaysDev
org.opencontainers.image.authors=CasjaysDev <docker-admin@casjaysdev.pro>
org.opencontainers.image.url=https://github.com/${{ github.repository }}
org.opencontainers.image.source=https://github.com/${{ github.repository }}
org.opencontainers.image.version=latest
org.opencontainers.image.revision=${{ github.sha }}
org.opencontainers.image.created=${{ github.event.head_commit.timestamp }}
tags: |
ghcr.io/${{ steps.meta.outputs.IMAGE_REPO }}:latest
ghcr.io/${{ steps.meta.outputs.IMAGE_REPO }}:${{ steps.meta.outputs.DATE_TAG }}