{"id":16195124,"url":"https://github.com/ashcrow/image-helpgen","last_synced_at":"2025-08-12T16:07:14.952Z","repository":{"id":69246828,"uuid":"112778592","full_name":"ashcrow/image-helpgen","owner":"ashcrow","description":"Generates/Guides the creation of image help files","archived":false,"fork":false,"pushed_at":"2018-10-05T19:06:51.000Z","size":125,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-07T15:55:13.481Z","etag":null,"topics":["container-tool","containers","help","images","man","markdown","tool"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ashcrow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","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":"2017-12-01T19:28:53.000Z","updated_at":"2018-10-05T19:06:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"cf50123f-096f-4829-a38b-97df794d7589","html_url":"https://github.com/ashcrow/image-helpgen","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/ashcrow/image-helpgen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashcrow%2Fimage-helpgen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashcrow%2Fimage-helpgen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashcrow%2Fimage-helpgen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashcrow%2Fimage-helpgen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ashcrow","download_url":"https://codeload.github.com/ashcrow/image-helpgen/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashcrow%2Fimage-helpgen/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270091726,"owners_count":24525259,"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-08-12T02:00:09.011Z","response_time":80,"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":["container-tool","containers","help","images","man","markdown","tool"],"created_at":"2024-10-10T08:26:20.522Z","updated_at":"2025-08-12T16:07:14.898Z","avatar_url":"https://github.com/ashcrow.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# image-helpgen\n\nGenerates image help and man files based on input. Initial idea from [atomic-wg](https://pagure.io/atomic-wg/issue/354) on [pagure](https://pagure.io/).\n\n[![Build Status](https://travis-ci.org/ashcrow/image-helpgen.svg)](https://travis-ci.org/ashcrow/image-helpgen/)\n\nSee [/example](/example) for an example run generating a``Dockerfile`` to ``help.md`` and ``help.1``.\n\n## Build\n\n### Binary\n**Note**: ``image-helpgen`` uses [dep](https://github.com/golang/dep/)\n\n```\n$ make deps  # Installs dep and pulls deps in\n$ make build # Builds binary\n$ ls image*\nimage-helpgen\n```\n\n### Container Image\n\n**Note**: You will need the `podman` binary or `docker` binary and service to build images.\n\n```\n$ make image # build the container image. Override IMAGE_BUILDER= if you want to use a different build binary than what was found\n\n```\n\n\n## Install\n**Note**: To see a list of variables which can be overridden run ```make help```\n\n```\n$ PREFIX=/install/root make install  # clean, build, and installs with a PREFIX\nrm -f image-helpgen\ngo build -ldflags '-X main.version=0.0.0 -X main.commitHash=a2b5dd271de018879fbd75bd321e85e65d4d722b -X main.buildTime=1512415719 -X main.defaultTemplate=/install/root/etc/image-helpgen/template.tpl' -o image-helpgen main.go\nstrip image-helpgen\ninstall -d /install/root/etc/image-helpgen/\ninstall --mode 644 template.tpl /install/root/etc/image-helpgen/template.tpl\ninstall -d /install/root/usr/bin\ninstall --mode 755 image-helpgen /install/root/usr/bin/image-helpgen\n```\n\n## Example\n\n### Commands\n```\nUsage: ./image-helpgen \u003ccommand\u003e [args]\nCommands:\n  dockerfile: Parses a Dockerfile and generates a markdown template\n  man: Generate man page off of a previously filled out markdown template\n```\n\n### From a Dockerfile\n```\n$ ./image-helpgen dockerfile -dockerfile /path/to/my/Dockerfile\n$ ls help*\nhelp.md\n$ \u003cedit help.md\u003e\n$ ./image-helpgen man\n$ ls help*\nhelp.1 help.md\n```\n\n### Running in a container\n```\n$ sudo podman run --rm -v `pwd`:/data:z image-helpgen:latest dockerfile --dockerfile Dockerfile \n```\n\n## How to document\n\n### Long Description\nTo create a long description for your Dockerfile start the Dockerfile with comments.\n\n*Example*\n\n```\n#This is my long description. This is a single line.\n#\n#Now this is a different line with a newline between.\n#This is the last line and by not providing another comment hash it will be the end of the long description.\n\n[...]\n```\n\n### Environment Variables (`ENV`)\nTo document an environment variable:\n\n1. The `ENV` must be on it's own line with only one variable\n2. Place a comment above the `ENV` directive with your description\n\n*Example*\n```\n# Defines the version of this Dockerfile\nENV DOCKERVERSION=\"1.2.3\"\n```\n\n### Ports (`EXPOSE`)\nTo document a port exposures:\n\n1. The `EXPOSE` must be on it's own line with only one port listed\n2. Place a comment above the `EXPOSE` line with $CONTAINERPORT-\u003e$HOSTPORT $DESCRIPTION\n\n*Example*\n```\n#8080-\u003e80 Provides access to the web server\nEXPOSE 8080\n```\n\n\n### Volumes (`VOLUME`)\nTo document a volume:\n\n1. The `VOLUME` must be on it's own line with only one volume listed\n2. Place a commend above the `VOLUME` line with $CONTAINERVOLUME-\u003e$HOSTVOLUME $DESCRIPTION\n\n*Example*\n```\n#/rootfs-\u003e/ The hosts root filesystem for the container to modify\nVOLUME /rootfs\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashcrow%2Fimage-helpgen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashcrow%2Fimage-helpgen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashcrow%2Fimage-helpgen/lists"}