Back to list
oorabona

project-experience

by oorabona

A repository with my favorite Docker images

2🍴 1📅 Jan 21, 2026

SKILL.md


name: project-experience description: | Project-specific patterns, conventions, and learnings for docker-containers. Triggers: "project patterns", "how does this project", "project conventions", "local setup", "build order", "test setup", "project-specific". Auto-loaded when working in this repository. version: 1.0.0

Project Experience: docker-containers

This file captures project-specific patterns and conventions. Updated by /skills update when learnings are captured.


Stack Components

ComponentTechnologyNotes
LanguageBashShell scripts for automation
ContainerDocker + BuildKitMulti-arch builds
CI/CDGitHub Actions4 workflows
DocsJekyllGitHub Pages
TestingCustom shelltest-all-containers.sh

Key Patterns

Version Discovery Pattern

Each container has a version.sh script that:

  1. Queries upstream source (GitHub API, package repos, etc.)
  2. Outputs JSON with version info
  3. Handles network failures gracefully
# Example: postgres/version.sh
curl -s https://api.github.com/repos/postgres/postgres/tags | jq -r '.[0].name'

Build Script Pattern

The ./make script is the main entry point:

  • Discovers targets from Dockerfile locations
  • Delegates to scripts in scripts/ directory
  • Uses helpers from helpers/ directory

Logging Pattern

All scripts use helpers/logging.sh:

source "$(dirname "$0")/helpers/logging.sh"
log_info "Message"
log_error "Error message"
log_help "command" "description"

Workflow Patterns

GitHub Actions

  1. upstream-monitor.yaml - Scheduled checks for new versions
  2. auto-build.yaml - Triggered builds when updates found
  3. update-dashboard.yaml - Regenerates index.md status page
  4. validate-version-scripts.yaml - PR validation

Local Testing with act

# Run workflow locally
act -j <job-name> --secret-file .env

See .actrc for default configuration.


Test Setup

Prerequisites

  • Docker daemon running
  • Network access for image pulls

Running Tests

./test-all-containers.sh        # Full test suite
./test-github-actions.sh        # Test workflow logic
./validate-version-scripts.sh   # Validate version.sh files

Debugging Tips

  • Check build.log for recent build output
  • Use ./make version <container> to debug version detection
  • Dashboard stats in .dashboard-stats
  • Test logs in test-logs/ directory

  • See GOTCHAS.md for project-specific gotchas and workarounds

Score

Total Score

65/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon