Docker-Images/CLAUDE.md

1.4 KiB

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Purpose

This repo holds CI Docker images for KollectAI infrastructure. Each subdirectory under ci/ is a self-contained image with its own Dockerfile and README.

Architecture

  • ci/<image-name>/ — One directory per Docker image (e.g. ci/java-builder/). Each contains a Dockerfile and a README with build args and usage.
  • .gitea/workflows/build-and-push.yaml — Gitea Actions workflow that auto-detects which images changed and builds/pushes only those. On schedule or manual dispatch, it builds all images.

Registries

  • Harbor: kcr.kollect.biz/kollect-tools/<image-name> — production image store (project: kollect-tools)
  • Images are tagged three ways: latest, short commit SHA, and YYYYMMDD date

CI Workflow

The workflow triggers on:

  • Push to main affecting ci/** (builds only changed images)
  • Weekly schedule (Sunday 10:00 UTC = Monday 00:00 UTC+14)
  • Manual dispatch (builds all images)

Required Gitea secrets: HARBOR_USERNAME, HARBOR_PASSWORD

Adding a New Image

  1. Create ci/<image-name>/Dockerfile
  2. Add a ci/<image-name>/README.md documenting build args and usage
  3. Push to main — the CI workflow auto-discovers it via find ci -mindepth 1 -maxdepth 1 -type d

Building Locally

docker build -t kcr.kollect.biz/kollect-tools/<image-name>:latest ci/<image-name>/