Skip to content

Build and publish Docker images using GitHub Actions.

License

Notifications You must be signed in to change notification settings

skills/publish-docker-images

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Publish Docker Images

Learn how to build and publish Docker images using GitHub Actions, progressing from basic commands to advanced automation with specialized Docker actions.

Welcome

  • Who is this for: Developers and DevOps engineers interested in automating Docker image creation and publication.

  • What you'll learn: How to build and publish Docker images using GitHub Actions with automated versioning and lifecycle management.

  • What you'll build: A GitHub Actions workflow that automatically builds and publishes Docker images to GitHub Container Registry.

  • Prerequisites:

    • Hello GitHub Actions exercise level of familiarity with GitHub Actions workflows
    • Basic familiarity with containerization and Docker
  • How long: This exercise takes less than 1 hour to complete.

In this exercise, you will:

  1. Set up a development environment and create a basic Docker workflow for building and publishing to GitHub Container Registry
  2. Enhance the workflow with specialized Docker actions for improved performance
  3. Implement dynamic tagging for automated versioning based on Git context
  4. Practice a complete development lifecycle by creating features, pull requests, and releases with proper container versioning

How to start this exercise

Simply copy the exercise to your account, then give your favorite Octocat (Mona) about 20 seconds to prepare the first lesson, then refresh the page.

Having trouble? 🤷

When copying the exercise, we recommend the following settings:

  • For owner, choose your personal account or an organization to host the repository.

  • We recommend creating a public repository, since private repositories will use Actions minutes.

If the exercise isn't ready in 20 seconds, please check the Actions tab.

  • Check to see if a job is running. Sometimes it simply takes a bit longer.

  • If the page shows a failed job, please submit an issue. Nice, you found a bug! 🐛


© 2026 GitHub • Code of ConductMIT License