{"id":18185095,"url":"https://github.com/pete911/ecr-image-sync","last_synced_at":"2025-04-01T23:31:17.646Z","repository":{"id":144322220,"uuid":"342534022","full_name":"pete911/ecr-image-sync","owner":"pete911","description":"sync public docker images to aws ecr","archived":false,"fork":false,"pushed_at":"2024-10-16T19:00:24.000Z","size":7897,"stargazers_count":1,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-18T17:53:58.239Z","etag":null,"topics":["aws-ecr","aws-ecr-tools","docker","docker-sync"],"latest_commit_sha":null,"homepage":"","language":"Go","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/pete911.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}},"created_at":"2021-02-26T10:00:23.000Z","updated_at":"2024-10-16T19:00:26.000Z","dependencies_parsed_at":"2024-02-07T19:47:02.209Z","dependency_job_id":"c5be12aa-0bb5-4c62-b45f-a38d4144758b","html_url":"https://github.com/pete911/ecr-image-sync","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pete911%2Fecr-image-sync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pete911%2Fecr-image-sync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pete911%2Fecr-image-sync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pete911%2Fecr-image-sync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pete911","download_url":"https://codeload.github.com/pete911/ecr-image-sync/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222782278,"owners_count":17036930,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["aws-ecr","aws-ecr-tools","docker","docker-sync"],"created_at":"2024-11-02T22:22:23.057Z","updated_at":"2024-11-02T22:22:23.705Z","avatar_url":"https://github.com/pete911.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ecr-image-sync\n\n[![pipeline](https://github.com/pete911/ecr-image-sync/actions/workflows/pipeline.yml/badge.svg)](https://github.com/pete911/ecr-image-sync/actions/workflows/pipeline.yml)\n\nDownloads docker images from provided list, then tag with AWS ECR tags and uploads them to AWS ECR. This helps to keep\nall images on AWS network (no need to download from public Internet), list can also be audited and reviewed.\n\nECR repository has to exist before image sync is run.\n\n## build and run\n\nIf required, project can be built (`make build`) and run (`./ecr-image-sync`) locally:\n```\necr-image-sync [flags]\n```\n```\n+--------------+----------------------------------------------------------------+\n| flags                                                                         |\n+--------------+----------------------------------------------------------------+\n| -aws-account | AWS account where to sync images to                            |\n+--------------+----------------------------------------------------------------+\n| -aws-region  | AWS region where to sync images to                             |\n+--------------+----------------------------------------------------------------+\n| -dry-run     | whether to do sync - tag and push image                        |\n+--------------+----------------------------------------------------------------+\n| -images-file | file containing list of images to sync (default \"images-list\") |\n+--------------+----------------------------------------------------------------+\n| -version     | ecr-image-sync version                                         |\n+--------------+----------------------------------------------------------------+\n```\n\n## build\n\n`go build` or `go install`\n\n## download\n\n- [binary](https://github.com/pete911/ecr-image-sync/releases)\n\n## build/install\n\n### brew\n\n- add tap `brew tap pete911/tap`\n- install `brew install pete911/tap/ecr-image-sync`\n\n### go\n\n[go](https://golang.org/dl/) has to be installed.\n- build `make build`\n- install `make install`\n\n### docker\n\n- run (dry-run) `docker run --rm -v $HOME/.aws/credentials:/root/.aws/credentials:ro -v $(pwd)/images-list:/images-list:ro pete911/ecr-image-sync:latest -aws-account \u003caccount\u003e -aws-region \u003cregion\u003e -dry-run`\n- exec inside container (debug) `docker run -it --rm --entrypoint /bin/sh pete911/ecr-image-sync:latest`\n\n## release\n\nReleases are published when the new tag is created e.g.\n`git tag -m \"add super cool feature\" 0.1.0 \u0026\u0026 git push --follow-tags`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpete911%2Fecr-image-sync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpete911%2Fecr-image-sync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpete911%2Fecr-image-sync/lists"}