kjanat/skills · Archived

github-docker-action

Create Docker container actions for GitHub Actions with Dockerfile, action.yml metadata, and entrypoint scripts. Use when building custom GitHub Actions with Docker, scaffolding container-based actions, or debugging Docker action workflows.

First seen Feb 25, 2026

Installation

$ npx skills add kjanat/skills --skill github-docker-action

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from kjanat/skills · top by installs.

npx skills add kjanat/skills

Browse all from kjanat/skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

License LICENSE
Default branch master
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0
LicenseMIT
More metadata
author
kjanat
version
1.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,391 B
  • docs SUMMARY.md 268 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 10 installs

SKILL.md

GitHub Docker Container Action

Build, package, and test custom GitHub Actions using Docker containers.

Not what you need? For running sidecar services (Redis, PostgreSQL, etc.)
in CI workflows, see the github-service-containers skill.

Prerequisites

  • Repository on GitHub (public, internal, or private)
  • Basic understanding of GitHub Actions and Docker
  • Self-hosted runners must run Linux with Docker installed

Security: Always treat workflow inputs as untrusted. Avoid script injection
via ${{ }} in run: blocks.

Workflow: Creating a Docker Action

Step 1: Create project structure

my-action/
├── Dockerfile
├── action.yml
├── entrypoint.sh
└── README.md

Step 2: Write Dockerfile

See [dockerfile-patterns.md](references/dockerfile-patterns.md)

Minimal:

FROM alpine:3.21
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]

Step 3: Define action metadata

See [action-metadata.md](references/action-metadata.md)

Declare inputs, outputs, and Docker configuration in action.yml.

Step 4: Write entrypoint script

See [entrypoint-scripts.md](references/entrypoint-scripts.md)

Script receives inputs as positional args. Write outputs to $GITHUB_OUTPUT.

Step 5: Make entrypoint executable

git add entrypoint.sh
git update-index --chmod=+x entrypoint.sh

Verify: git ls-files --stage entrypoint.sh should show 100755.

Step 6: Tag and push

git add action.yml entrypoint.sh Dockerfile README.md
git commit -m "Initial action release"
git tag -a -m "v1 release" v1
git push --follow-tags

Step 7: Test in a workflow

See [workflow-testing.md](references/workflow-testing.md)

Quick Reference

Component Purpose
Dockerfile Container image definition
action.yml Action metadata (inputs, outputs, runner)
entrypoint.sh Code executed when container starts
README.md Usage docs for action consumers

Key environment variables

Variable Description
$GITHUB_OUTPUT File to write output key=value pairs
$GITHUB_WORKSPACE Repo checkout dir (maps to /github/workspace in container)
$GITHUB_ENV File to set env vars for later steps

Container filesystem mapping

The runner maps GITHUB_WORKSPACE to /github/workspace in the container. Files written there are available to subsequent workflow steps.

Reading Order

Task Files to Read
Scaffold new action SKILL.md (this file)
Dockerfile questions dockerfile-patterns.md
Configure inputs/outputs action-metadata.md
Write entrypoint logic entrypoint-scripts.md
Test in workflow workflow-testing.md
Debug container issues dockerfile-patterns.md + entrypoint-scripts.md

In This Reference

File Purpose
[dockerfile-patterns.md](references/dockerfile-patterns.md) Dockerfile templates and gotchas
[action-metadata.md](references/action-metadata.md) action.yml spec and examples
[entrypoint-scripts.md](references/entrypoint-scripts.md) Entrypoint, outputs, permissions
[workflow-testing.md](references/workflow-testing.md) Workflow YAML for public/private