Skip to content

actions/q-154: ADD question r/t Docker container actions#708

Open
mcummings128 wants to merge 2 commits into
FidelusAleksander:mainfrom
mcummings128:feature/mcummings128/q-154-container-actions
Open

actions/q-154: ADD question r/t Docker container actions#708
mcummings128 wants to merge 2 commits into
FidelusAleksander:mainfrom
mcummings128:feature/mcummings128/q-154-container-actions

Conversation

@mcummings128
Copy link
Copy Markdown
Contributor

PR Type

  • Adding new question(s)

Warning: We do not support the inclusion of questions directly copied from official GitHub certification exams. Please only submit original questions and content that you have created.

  • Other content changes (updating questions, answers, explanations or study resources)
  • Code changes (non-content)
  • Documentation changes
  • Other

What's new?

Adds a new question regarding when to use Docker container actions (and what they are):

  • Highlights appropriate use cases (consistent runtime dependencies and full control)
  • Explains Docker container actions are not low-overhead
  • Clarifies that they run only on Linux runners,
  • Explains they have slower startup than JavaScript/composite actions
  • One explanation gives a brief summary of a composite action (so the user understands/remembers this as a separate concept)
    -Explains all actions require an action.yml.

For the correct answers in this, let me know if they're too similar and I can consolidate them into one, or edit one of them to be more specific to Docker container actions' use cases. I really don't know much about them, nor containers/images in general so I generally get what the docs (and Claude, who I fact-checked against :) ) are saying but I would totally get if this could be worded better

Related issue(s)

N/A

Screenshots

N/A

Adds a new question regarding when to use Docker container actions (and what they are):
- Highlights appropriate use cases (consistent runtime dependencies and full control)
- Explains Docker container actions are not low-overhead
- Clarifies that they run only on Linux runners,
- Explains they have slower startup than JavaScript/composite actions
- One explanation gives a brief summary of a composite action (so the user understands/remembers this as a separate concept)
-Explains all actions require an action.yml.
@github-actions github-actions Bot added actions Related to GitHub Actions exam content Related to the content of the site labels May 17, 2026
documentation: "https://docs.github.com/en/actions/concepts/workflows-and-actions/custom-actions#docker-container-actions"
---

- [x] When you need to utilize runtime environments with consistent, specific dependencies and libraries
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"consistent, specific dependencies and libraries"

isn't this the same for other workflows - you install dependencies from lockfiles, lock actions to specific versions etc

---

- [x] When you need to utilize runtime environments with consistent, specific dependencies and libraries
- [x] When you need full control over the execution environment
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sounds more like a self hosted runner thing

Copy link
Copy Markdown
Contributor Author

@mcummings128 mcummings128 May 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It sounds like it somewhat. Researching it here and there it seems like Docker container actions can be used when you require tools that aren't preinstalled on GitHub-hosted runners.
When you use a Docker action, it seems like everything is run inside the container, separate from the runner itself. Can you think of a scenario where that sort of isolation would be preferred, so I could work that idea into an answer?

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is one of the first actions I created (or the first)

https://github.com/FidelusAleksander/gh-action-regex

For me it really mainly was to use a language that I was comfortable with at the time - which was python, not JS.

I'm sure there are also other scenarios where controlled environments are needed - I just haven't ran into that

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did you choose a Docker container action vs. doing something like actions/setup-python? The answer to that might help me formulate another good additional answer.

I will definitely work on a more general answer (easier to use Ruby, Go, etc.) regardless

Copy link
Copy Markdown
Owner

@FidelusAleksander FidelusAleksander left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure I like the correct answers. Maybe include something related to running non javascript actions - e.g Go

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

actions Related to GitHub Actions exam content Related to the content of the site

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants