{"id":18963952,"url":"https://github.com/JaneliaSciComp/entrypoints","last_synced_at":"2025-04-16T05:31:30.395Z","repository":{"id":137881268,"uuid":"326093957","full_name":"JaneliaSciComp/entrypoints","owner":"JaneliaSciComp","description":"Support multiple entrypoint scripts in a container for use in containerized scientific tools.","archived":false,"fork":false,"pushed_at":"2021-01-03T20:07:50.000Z","size":18,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-02-21T05:24:51.530Z","etag":null,"topics":["docker","entrypoint","oci"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JaneliaSciComp.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-01-02T02:30:31.000Z","updated_at":"2021-04-10T12:07:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"2feda42a-2993-4d11-b85f-a6584cf5d031","html_url":"https://github.com/JaneliaSciComp/entrypoints","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/JaneliaSciComp%2Fentrypoints","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JaneliaSciComp%2Fentrypoints/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JaneliaSciComp%2Fentrypoints/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JaneliaSciComp%2Fentrypoints/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JaneliaSciComp","download_url":"https://codeload.github.com/JaneliaSciComp/entrypoints/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249201117,"owners_count":21229004,"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","entrypoint","oci"],"created_at":"2024-11-08T14:22:36.912Z","updated_at":"2025-04-16T05:31:30.380Z","avatar_url":"https://github.com/JaneliaSciComp.png","language":"Go","readme":"# Entrypoints\n\nSimple support for multiple entrypoint scripts in an OCI container. Just install this tiny binary as your ENTRYPOINT and put all of your entrypoint shell scripts in one directory. The binary takes care of providing a listing of valid \"apps\" and lets the user invoke them without knowing the internals of the container filesystem.\n\n## Installation\n\nThe following Dockerfile commands install the `entrypoint` binary into /app/entrypoints and set it as the entrypoint:\n\n```\nARG ENTRYPOINTS_VERSION=latest\nWORKDIR app\nRUN curl -sL https://github.com/JaneliaSciComp/entrypoints/releases/download/${ENTRYPOINTS_VERSION}/entrypoints_linux_x86_64.tar.gz | tar -xz -C /app\nENTRYPOINT [ \"/app/entrypoints\", \"-s\", \"/app/scripts/cmd\" ]\n```\n\nA multi-stage build is recommended to improve build speed:\n\n```\nFROM janeliascicomp/common-tools:1.0.2 as entrypoints-builder\nARG ENTRYPOINTS_VERSION=0.1.1\nRUN curl -sL https://github.com/JaneliaSciComp/entrypoints/releases/download/${ENTRYPOINTS_VERSION}/entrypoints_linux_x86_64.tar.gz | tar -xz -C /tmp\n```\n\nIn the final container:\n```\nCOPY --from=entrypoints-builder --chown=root:root /tmp/entrypoints /app/entrypoints\nENTRYPOINT [ \"/app/entrypoints\", \"-s\", \"/app/scripts/cmd\" ]\n\n```\n\nSee also: [SCIF](https://sci-f.github.io/)\n\n## Development\n\n### Build\n\n```\ngo install\n```\n\n### Release\n```\nVERSION=\u003cversion number\u003e\ngit tag -a $VERSION -m \"Release $VERSION\"\ngit push origin $VERSION\ngoreleaser --rm-dist\n```\n\n","funding_links":[],"categories":["Containerization"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJaneliaSciComp%2Fentrypoints","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJaneliaSciComp%2Fentrypoints","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJaneliaSciComp%2Fentrypoints/lists"}