{"id":31029965,"url":"https://github.com/cowwoc/anchor4j","last_synced_at":"2025-09-13T22:57:25.790Z","repository":{"id":270514475,"uuid":"910125102","full_name":"cowwoc/anchor4j","owner":"cowwoc","description":"A modern Java client for Docker: fluent API, test-friendly, cross-platform","archived":false,"fork":false,"pushed_at":"2025-07-15T23:08:35.000Z","size":7666,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-28T18:04:05.795Z","etag":null,"topics":["devops","docker","docker-java","integration-testing","java","testcontainers"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cowwoc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"docs/support-policy-1.0.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"cowwoc"}},"created_at":"2024-12-30T14:56:56.000Z","updated_at":"2025-07-15T23:08:39.000Z","dependencies_parsed_at":"2024-12-31T21:07:01.257Z","dependency_job_id":"3be31114-2d7a-4256-9a5a-0ee28254d30b","html_url":"https://github.com/cowwoc/anchor4j","commit_stats":null,"previous_names":["cowwoc/docker","cowwoc/anchor4j"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/cowwoc/anchor4j","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowwoc%2Fanchor4j","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowwoc%2Fanchor4j/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowwoc%2Fanchor4j/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowwoc%2Fanchor4j/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cowwoc","download_url":"https://codeload.github.com/cowwoc/anchor4j/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cowwoc%2Fanchor4j/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275038261,"owners_count":25394640,"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","status":"online","status_checked_at":"2025-09-13T02:00:10.085Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["devops","docker","docker-java","integration-testing","java","testcontainers"],"created_at":"2025-09-13T22:57:11.459Z","updated_at":"2025-09-13T22:57:25.775Z","avatar_url":"https://github.com/cowwoc.png","language":"Java","funding_links":["https://github.com/sponsors/cowwoc"],"categories":[],"sub_categories":[],"readme":"[![Maven Central](https://maven-badges.sml.io/maven-central/io.github.cowwoc.anchor4j/anchor4j/badge.svg)](https://search.maven.org/search?q=g:io.github.cowwoc.anchor4j)\n[![build-status](https://github.com/cowwoc/anchor4j/workflows/Build/badge.svg)](https://github.com/cowwoc/anchor4j/actions/?query=workflow%3Abuild)\n\n# \u003cimg src=\"docs/logo.svg\" width=64 height=64 alt=\"logo\"\u003e Anchor4J\n\n[![API](https://img.shields.io/badge/api_docs-5B45D5.svg)](https://cowwoc.github.io/anchor4j/0.10/)\n[![Changelog](https://img.shields.io/badge/changelog-A345D5.svg)](docs/changelog.md)\n\nA modern Java client for [Docker](https://www.docker.com/): fluent API, test-friendly, and Kubernetes-ready.\n\n✅ A fluent, strongly typed API.\u003cbr\u003e\n✅ Support for building images with and without root access.\u003cbr\u003e\n✅ Easy integration with CI and tests.\u003cbr\u003e\n✅ First-class support for capturing stdout/stderr and process exit status.\u003cbr\u003e\n\nTo get started, add this Maven dependency:\n\n```xml\n\n\u003cdependency\u003e\n  \u003cgroupId\u003eio.github.cowwoc.anchor4j\u003c/groupId\u003e\n  \u003cartifactId\u003eanchor4j\u003c/artifactId\u003e\n  \u003cversion\u003e0.10\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Example\n\n```java\nimport client.io.github.cowwoc.anchor4j.docker.Docker;\n\nimport java.io.IOException;\n\nclass Example\n{\n  public static void main(String[] args)\n    throws IOException, InterruptedException\n  {\n    DockerClient docker = DockerClient.build();\n\n    String imageId = docker.buildImage().\n      export(Exporter.dockerImage().build()).\n      build(\".\");\n\n    docker.tagImage(id, \"rocket-ship\");\n    docker.pushImage(\"rocket-ship\").push();\n  }\n}\n```\n\n## Getting Started\n\nSee the [API documentation](https://cowwoc.github.io/docker/0.10/) for more details.\n\n## 💖 Support Ongoing Development 💖\n\nIf you find this project helpful, please consider [sponsoring me](https://github.com/sponsors/cowwoc).\nMaintaining quality open-source software takes significant time and effort—especially while balancing family\nlife with young children. Your support helps make this work sustainable.\n\n## Missing Features?\n\nThe `anchor4j` API covers a wide range of functionality, and since my time is limited, new features are added\nbased on user requests. If there's a property or capability you'd like to see added,\nplease [open a new issue](issues/new).\n\n## Licensing\n\nThis library is dual-licensed:\n\n- ✅ [ModernJDK License](docs/modern-jdk-license-1.0.md) (free for personal use or small businesses):\n  - You may use, modify, and redistribute this software for free when:\n    - It is compiled for and executed on the latest generally available (GA) Java Development Kit (JDK)\n      version at the time of deployment.\n    - You are an individual or a company with 10 or fewer employees.\n    - You do not rebrand or white-label the software.\n  - You are not required to update existing deployments when a newer JDK is released.\n\n- 💼 [Commercial License](docs/commercial-license-1.0.md):\n  - Required for:\n    - Compiling, running, or distributing the software for older (non-GA) JDK versions.\n    - Use by companies with more than 10 employees.\n    - White-labeling or rebranding the library in any form.\n\n## Dependencies\n\n* See [Third party licenses](LICENSE-3RD-PARTY.md) for the licenses of the dependencies.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcowwoc%2Fanchor4j","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcowwoc%2Fanchor4j","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcowwoc%2Fanchor4j/lists"}