{"id":41381441,"url":"https://github.com/skills/publish-docker-images","last_synced_at":"2026-02-01T22:00:43.453Z","repository":{"id":37021910,"uuid":"454099450","full_name":"skills/publish-docker-images","owner":"skills","description":"Build and publish Docker images using GitHub Actions.","archived":false,"fork":false,"pushed_at":"2026-01-27T15:47:20.000Z","size":95,"stargazers_count":207,"open_issues_count":0,"forks_count":104,"subscribers_count":20,"default_branch":"main","last_synced_at":"2026-01-27T22:32:09.624Z","etag":null,"topics":["deployment","docker","github-actions","github-packages","skills-course","workflows"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skills.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-01-31T17:17:45.000Z","updated_at":"2026-01-27T15:48:09.000Z","dependencies_parsed_at":"2024-01-16T20:31:58.691Z","dependency_job_id":"51b30d49-75bd-43d0-b3ad-76ca3d62263e","html_url":"https://github.com/skills/publish-docker-images","commit_stats":null,"previous_names":["skills/publish-docker-images"],"tags_count":0,"template":true,"template_full_name":"skills/exercise-template","purl":"pkg:github/skills/publish-docker-images","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skills%2Fpublish-docker-images","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skills%2Fpublish-docker-images/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skills%2Fpublish-docker-images/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skills%2Fpublish-docker-images/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skills","download_url":"https://codeload.github.com/skills/publish-docker-images/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skills%2Fpublish-docker-images/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28992628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-01T20:57:35.821Z","status":"ssl_error","status_checked_at":"2026-02-01T20:57:29.580Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deployment","docker","github-actions","github-packages","skills-course","workflows"],"created_at":"2026-01-23T11:00:31.884Z","updated_at":"2026-02-01T22:00:43.442Z","avatar_url":"https://github.com/skills.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# Publish Docker Images\n\n_Learn how to build and publish Docker images using GitHub Actions, progressing from basic commands to advanced automation with specialized Docker actions._\n\n## Welcome\n\n- **Who is this for**: Developers and DevOps engineers interested in automating Docker image creation and publication.\n- **What you'll learn**: How to build and publish Docker images using GitHub Actions with automated versioning and lifecycle management.\n- **What you'll build**: A GitHub Actions workflow that automatically builds and publishes Docker images to GitHub Container Registry.\n- **Prerequisites**:\n  - [Hello GitHub Actions](https://github.com/skills/hello-github-actions) exercise level of familiarity with GitHub Actions workflows\n  - Basic familiarity with containerization and [Docker](https://docs.docker.com/get-started/docker-overview/)\n\n- **How long**: This exercise takes less than 1 hour to complete.\n\nIn this exercise, you will:\n\n1. Set up a development environment and create a basic Docker workflow for building and publishing to GitHub Container Registry\n1. Enhance the workflow with specialized Docker actions for improved performance\n1. Implement dynamic tagging for automated versioning based on Git context\n1. Practice a complete development lifecycle by creating features, pull requests, and releases with proper container versioning\n\n### How to start this exercise\n\nSimply copy the exercise to your account, then give your favorite Octocat (Mona) **about 20 seconds** to prepare the first lesson, then **refresh the page**.\n\n[![](https://img.shields.io/badge/Copy%20Exercise-%E2%86%92-1f883d?style=for-the-badge\u0026logo=github\u0026labelColor=197935)](https://github.com/new?template_owner=skills\u0026template_name=publish-docker-images\u0026owner=%40me\u0026name=skills-publish-docker-images\u0026description=Exercise:+Publish+Docker+Images\u0026visibility=public)\n\n\u003cdetails\u003e\n\u003csummary\u003eHaving trouble? 🤷\u003c/summary\u003e\u003cbr/\u003e\n\nWhen copying the exercise, we recommend the following settings:\n\n- For owner, choose your personal account or an organization to host the repository.\n\n- We recommend creating a public repository, since private repositories will use Actions minutes.\n\nIf the exercise isn't ready in 20 seconds, please check the [Actions](../../actions) tab.\n\n- Check to see if a job is running. Sometimes it simply takes a bit longer.\n\n- If the page shows a failed job, please submit an issue. Nice, you found a bug! 🐛\n\n\u003c/details\u003e\n\n---\n\n\u0026copy; 2026 GitHub \u0026bull; [Code of Conduct](https://www.contributor-covenant.org/version/2/1/code_of_conduct/code_of_conduct.md) \u0026bull; [MIT License](https://gh.io/mit)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskills%2Fpublish-docker-images","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskills%2Fpublish-docker-images","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskills%2Fpublish-docker-images/lists"}