{"id":14984738,"url":"https://github.com/thorpejosh/ssh-agent-docker","last_synced_at":"2025-04-10T22:37:36.220Z","repository":{"id":199986216,"uuid":"704649612","full_name":"ThorpeJosh/ssh-agent-docker","owner":"ThorpeJosh","description":"Jenkins SSH agent image with the docker-cli binary baked in","archived":false,"fork":false,"pushed_at":"2025-04-10T11:55:44.000Z","size":170,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-10T12:58:22.037Z","etag":null,"topics":["docker","docker-compose","docker-image","jenkins","jenkins-docker","jenkins-docker-image","jenkins-docker-slave","jenkins-pipeline","jenkins-ssh-agent","jenkins-ssh-slave"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","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/ThorpeJosh.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":"2023-10-13T18:20:03.000Z","updated_at":"2025-04-10T11:55:19.000Z","dependencies_parsed_at":"2024-05-16T02:09:51.407Z","dependency_job_id":"577ca4e6-06f9-427d-b699-d49a0f638197","html_url":"https://github.com/ThorpeJosh/ssh-agent-docker","commit_stats":{"total_commits":123,"total_committers":3,"mean_commits":41.0,"dds":0.1544715447154471,"last_synced_commit":"ca301df8fff4dfbdd710023e2b8dc07b55495ccd"},"previous_names":["thorpejosh/ssh-agent-docker"],"tags_count":44,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThorpeJosh%2Fssh-agent-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThorpeJosh%2Fssh-agent-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThorpeJosh%2Fssh-agent-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThorpeJosh%2Fssh-agent-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ThorpeJosh","download_url":"https://codeload.github.com/ThorpeJosh/ssh-agent-docker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248311725,"owners_count":21082632,"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":["docker","docker-compose","docker-image","jenkins","jenkins-docker","jenkins-docker-image","jenkins-docker-slave","jenkins-pipeline","jenkins-ssh-agent","jenkins-ssh-slave"],"created_at":"2024-09-24T14:09:35.593Z","updated_at":"2025-04-10T22:37:36.191Z","avatar_url":"https://github.com/ThorpeJosh.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jenkins SSH agent image with docker-cli binary added\n\n[![GitHub License](https://img.shields.io/github/license/thorpejosh/ssh-agent-docker)](https://github.com/ThorpeJosh/ssh-agent-docker/blob/main/LICENSE)\n[![GitHub release](https://img.shields.io/github/v/release/thorpejosh/ssh-agent-docker)](https://github.com/thorpejosh/ssh-agent-docker/releases)\n[![Docker Pulls](https://img.shields.io/docker/pulls/thorpejosh/ssh-agent-docker)](https://hub.docker.com/r/thorpejosh/ssh-agent-docker)\n![Docker Pulls](https://img.shields.io/badge/architecture-amd64-blue)\n![Docker Pulls](https://img.shields.io/badge/architecture-arm64-blue)\n[![Image Size](https://img.shields.io/docker/image-size/thorpejosh/ssh-agent-docker)](https://hub.docker.com/r/thorpejosh/ssh-agent-docker)\n\nSimply the official [Jenkins SSH agent](https://hub.docker.com/r/jenkins/ssh-agent) with the docker cli binary from the official [docker image](https://hub.docker.com/_/docker) baked into it.\n\n## Why?\nThis allows the Jenkins SSH agent (running in a container) to execute docker commands, enabling [docker pipelines](https://www.jenkins.io/doc/book/pipeline/docker/) to be executed on the agent.\n\n## Image variants\n### Shared tags\n* `latest`, `${IMAGE_VERSION}`\n\nThis image will follow the [jenkins/ssh-agent](https://hub.docker.com/r/jenkins/ssh-agent)  `${IMAGE_VERSION}` tag. `${IMAGE_VERSION}` is a [semver](https://semver.org/) tagging that follows the same train as `latest` and is currently based on debian-bookworm and jdk11.\n\nWhen semver releases are published they will also be tagged `latest` which is one-to-one with `jenkins/ssh-agent:latest`\n\n| ThorpeJosh image with docker binary          | Jenkins image it is based on |\n|----------------------------------------------|------------------------------|\n| `thorpejosh/ssh-agent-docker:latest`         | `jenkins/ssh-agent:latest`   |\n| `thorpejosh/ssh-agent-docker:5.16.0`         | `jenkins/ssh-agent:5.16.0`   |\n\n### Registries\nThe image is published on both [docker.io](https://hub.docker.com/r/thorpejosh/ssh-agent-docker) and [ghcr.io](https://github.com/ThorpeJosh/ssh-agent-docker/pkgs/container/ssh-agent-docker)\n\n### Architectures\nBoth `amd64` and `arm64` images are available in each release manifest.\n\n## How to use this image\n### Recommendations\n* Run this image on a rootless docker/podman install since the agent needs POST access to the docker socket.\n* Use a docker socket proxy instead of bind mounting the socket into the agent container.\n\nSee [jenkins/ssh-agent](https://hub.docker.com/r/jenkins/ssh-agent) for more details on how to use container.\n\nExample compose file showing the rootless docker socket mounted:\n```yaml\n---\n\nvolumes:\n  jenkins_agent_home:\n    external: true\n\nservices:\n  jenkins-ssh-agent:\n    image: thorpejosh/ssh-agent-docker:latest  # Recommend using semver tag instead of `latest`\n    container_name: jenkins-ssh-agent\n    environment:\n      - JENKINS_AGENT_SSH_PUBKEY=\u003cssh public key\u003e\n    volumes:\n      - jenkins_agent_home:/home/jenkins\n      # Mount rootless docker socket, but recommend using a docker socket proxy instead\n      - /run/user/1000/docker.sock:/var/run/docker.sock\n    ports:\n      - 2222:22\n    cgroup: host\n    restart: unless-stopped\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthorpejosh%2Fssh-agent-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthorpejosh%2Fssh-agent-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthorpejosh%2Fssh-agent-docker/lists"}