alpine-docker / git

A useful simple git container running in alpine linux, especially for tiny linux distro, such as RancherOS, which don't have package manager.
Apache License 2.0
155 stars 86 forks source link

Dockerfile does not conform to entrypoint best practice #8

Open muppet3000 opened 6 years ago

muppet3000 commented 6 years ago

According to the consistency rules here: https://github.com/docker-library/official-images#consistency

The dockerfile should be changed to CMD "git --help"

This will allow tools such as jenkins to run jobs in the way that it is expecting rather than having to hard code the overriding of the entrypoint every time.

ozbillwang commented 6 years ago

Are you fine to raise the PR?

oliv3r commented 5 years ago

Also, I find that some CI systems are not too happy with the VOLUMES entry. Is the volume really needed? Can we not just drop it? I think the workdir is more then enough.

sfllaw commented 3 years ago

Here is a proposed entrypoint.sh:

#!/bin/sh

cmd='git'
if [[ -x "$1" && -f "$1" ]]; then
    cmd="$1"
    shift
fi

exec "$cmd" "$@"

This would be integrated in the Dockerfile like so:

FROM alpine

WORKDIR /git
COPY entrypoint.sh /
ENTRYPOINT ["/entrypoint.sh"]
CMD []
DevDavido commented 2 years ago

I would also favour @oliv3r's / @sfllaw's suggestion to remove the git volume from the Dockerfile.

ozbillwang commented 2 years ago

there was an exist PR #10 for similar requirement.

If we agree to go with the consistency rules, please raise a new PR for your solution.

I am fine to remove the git volume from Dockerfile

FyiurAmron commented 1 year ago

TBH, this is still an issue, I've seen many problem reports over the net caused by exactly this, and also this was my problem when I first used this docker. @ozbillwang can we action on this in some way? Is there any problem with https://github.com/alpine-docker/git/pull/10/files that currently needs fixing?

ozbillwang commented 1 year ago

Please understand that this image is widely used and has exceeded my expectations.

image

I'm cautious about making any significant changes to it to avoid disrupting things outside of it.

FyiurAmron commented 1 year ago

@ozbillwang

  1. the change proposed was backwards-compatible AFAIK (it ran the git command by default, and only called bash if the git call failed),
  2. fear is an emotion, and mixing emotions with engineering practices is seldom a good idea,
  3. if you still want to keep this repo as-it-is, can you maybe just create and publish a fixed fork instead?