bauk/gitThis repo is used for automated builds of bauk/git on dockerhub.
It is meant to be an easy way to trial or test with different versions of git, without having to install them manually.
# To run the latest git version on your current directory: docker run --rm -it --user $UID -v $PWD:/git bauk/git bash
The following tags are available. Currently the default OS is fedora but there are some older centos images too.
| format | example | notes |
|---|---|---|
| {version} | 2.24.0 | The last CentOS build using that git version |
| {os}-{version} | centos-2.24.0 | The last build of that OS and git version |
| {os}-{version}-{commit} | centos-2.24.0-712c3fe | The only tag that is sure to not get updated. The id of the master branch is used as a unique id |
| {os} | centos | The last build of the highest version number for that OS |
| latest | latest | The latest centos build of the highest version number |
| {type} | full | The latest build of that type. Default OS is assumed. |
| {type}-{version} | full-2.24.0 | The build of that type with the specified git version installed. Default OS is assumed. |
| {os}-{type} | centos-full | The build of that OS and type with the specified git version installed. |
| {os}-{type}-{version} | full-2.24.0 | The build of that type with the specified git version installed. |
| {os}-{type}-{version}-{commit} | full-2.24.0 | The build of that type with the specified git version installed. Sure not to get updated as it has the id of the commit on the master branch as a unique identifier. |
| INTERNAL | TAGS | (Do not use as may change) |
| {os}-base | centos-base | Base image used by all images of that OS. To speed things up and make sharing easier |
| {os}-build-base | centos-build-base | Base image used by all build images of that OS. Based on top of the normal base but with tools to compile git, e.g. gcc |
| {os}-build-{version} | centos-build-2.24.0 | Image with the compiled git code for that version. Used as a cache layer to stop the real builds needing to compile each time. This does however have that version of git installed as well as compiled. It just doesn't have all the entrypoint wrapping of the real image and is quite a bit larger |
| doce | docs | A centos-based image that just prints out this README. Used to keep the README in dockerhub up to date |
| OS | Description |
|---|---|
| fedora | The default OS. |
| centos | The latest centos OS. Currently pointing to centos8. |
| centos8 | Based on CentOS 8. |
| centos7 | Obsolete. Based on CentOS 7 but no longer updated. Old versions will still exist. |
| Type | Description |
|---|---|
| - | Without a type, just a minimal image with git installed. |
| full | A fat image containing more tools like git-filter-repo, vim and git-lfs. |
Any commands passed to the image are passed directly to git (so 'show' will end up being 'git show'). Unless the first argument is sh or bash, in which case the command will just be executes as is (useful for starting interactive sessions).
The following variables will be acted upon:
# A simple run to test the image: docker run --rm bauk/git --help docker run --rm bauk/git --version # To start an interactive shell docker run --rm -it bauk/git sh docker run --rm -it bauk/git bash # To run commands on a repo on your box: docker run --rm --user $UID -v /path/to/host/repo:/git bauk/git show docker run --rm --user $UID -v /path/to/host/repo:/git bauk/git log -n3 # To start an interactive session when you are currently inside the repo you want docker run --rm -it --user $UID -v $PWD:/git bauk/git bash # To load in your own git config file docker run --rm -it -v ~/.gitconfig:/gitconfig bauk/git bash # To load in an individual config item, e.g. user.name docker run --rm -it -e "CFG_USER_NAME=Joe Bloggs" bauk/git config --list # Putting it all together and starting an interactive session # where you are currently in the repo and you get to keep all # your aliases docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git bash # Same as above, but specifying the version of git (for checking different versions) # If the version is not specified, it uses the latest version of git docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:1.8.2.3 bash docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:1.9.5 bash docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:2.12.5 bash docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:2.24.0 bash # To remove all of a.zip from the history of your repo (for space or security reasons) # Ensure you run this on a fresh clone, and you will have to re-write all of history to get it back docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:full filter-repo --path a.zip --invert-paths
If you do not have git installed on your box, you can use this. It will however take longer to run than a native git installation, but it might be the easiest way to get the latest git installed. I have used the dgit alias here, but if you do not have git at all or want to overwrite it, then you can use the git alias instead. Just add the following to your .bash_profile
alias dgit='docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git'
You can then just use this in place of git (e.g. dgit status). However if you find yourself using this a lot, you can reach out as there may be more efficient but complicated ways of running this (using a persistant docker image to speed up execution).
You can pass git config down to the image with environmental variables. e.g:
docker run --rm -it -e CFG_CORE_PAGER=less -e CFG_COLOR_UI=auto bauk/git config --list
There is a tag for each corresponding docker build. The script setupTags.sh will do a build and basic test and push up each version as a tag to be built by dockerhub.
The master branch is the base for all new tags. To update tags, they need to be deleted and re-created from the new tip of master (for future master improvements).
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务